美文网首页
GIT简明速成教程

GIT简明速成教程

作者: 腾先生 | 来源:发表于2017-01-24 15:04 被阅读0次

    GIT简明速成教程

    <a href='https://github.com/suntengfeisun/learn_git'>原文链接,转载请注明,谢谢.</a>

    本教程为速成教程,如需要更深入的学习,请出门左拐

    在浏览教程之前我们先看一下git版本管理的流程示意"图"


    本地文件--->暂存区--->本地版本库(某分支)--->远程版本库(某分支)


    以下所有版本库地址都以git@aaa.bbb:ccc.git为例

    初级教程

    我有一个现成的版本库地址我可以进行读写,我该如何将代码拉取远程代码到本地?

    答:

      git clone git@aaa.bbb:ccc.git //将在本地新建一个ccc的文件夹,可以理解为于仓库,其实为本地文件
    

    我已经获取到了远程的代码,经过修改,我想把我的代码改动提交的远程的版本库,我应该怎么操作呢?

    答:

      git diff //对比一下我的"本地文件"和"暂存区"的文件
      git add . //提交"本地文件"到暂存区
      git diff -cached //对比暂存区和本地版本库的区别
      git commit -m commit_info //提交暂存区文件到本地版本库
      git push origin master //提交本地版本库到远程版本库
    

    中级教程

    master分支是什么?我如何创建以及切换一个分支?

    答:

    一个仓库可以有多个分支,无论是本地还是远程

      git branch newbranch //在本地创建一个新分支
      git checkout newbranch //将本地指向新分支
    

    简而言之

      git checkout -b newbranch //创建并切换到新分支newbranch
    

    创建并切换到新分支之后

      git commit -am commit_info //简写了add & commit
      git push origin newbranch //从本地版本库推送到远程版本库 
    

    高级教程

    我已经新建了一个空文件夹,我如何"绑定"远程仓库?

    答:

      git init //创建一个本地版本库
      git remote add origin git@git.yhouse.com:test.git //将远程版本库与本地"关联"
      git pull origin master //将远程版本库的内容拉下来(注意这里是同时fetch到了本地版本库和merge到了本地文件)
    

    我本地有一些代码没及时关联远程版本库,我又不想clone了复制过去,一定有更简洁的方法吧?

    答:

    我们直接按照上面的方式不就行了?但是,如果本地文件和远程文件有文件冲突了那该怎么办?问题是我不知道如何应对啊?

    下面就是应对方法

      git init //在本地创建一个版本库
      git remote add origin git@git.yhouse.com:test.git //将远程版本库与本地"关联"
      git fetch origin master:temp //将远程版本库内容拉到新本地分支temp里面
      git diff temp 将本地文件与本地仓库新分支temp做比较
      //处理冲突或者完全没有冲突
      git merge temp //合并内容到本地
    

    我想看一下我的提交历史?

    答:

      git log //查看全部提交历史commit_info信息
      git log -n //查看最近n次提交历史commit_info信息
      git log -p //查看提交历史commit_info信息以及文件更改详情
      git log --stat //-p是详情,这个没有详情,只有更改的行数git log //查看全部提交历史commit_info信息
    

    我这次修改的错误了,我应该如何回退到上一个版本?

    答:

      git reset --hard HEAD^ //退回到上一个版本
    

    学会了退回上一个版本,那么其他任意版本呢?

    答:

      git reset --hard commit_id //退回到任意版本
    

    还有什么其他有用的命令?

    答:

      git remote -v //查看远程版本库地址
      git branch -a //查看所有分支
    

    相关文章

      网友评论

          本文标题:GIT简明速成教程

          本文链接:https://www.haomeiwen.com/subject/rdbzbttx.html