职场经验:那些实用的git命令

     

       书到用时方恨少,git命令也是如此,当遇到问题需要用到的时候,才发现知道的太少~。下面介绍几个比较实用的git命令,也是开发过程中经常会遇到的。

      

1、如何解决本地和远程的冲突? git stash

        git pull 同步远程分支代码,有冲突 。

           ------- 看提示内容,我们也知道应该怎么做了。“Please commit your changes or stash them before you merge",我本地有修改的内容,这里提示要么把修改的内容提交,要么先把本地修改的内容stash存储起来,这样才能进行merge合并。

       

       git stash

            ------ 采用git stash会将我本地修改的内容保存起来,接下来就可以通过git pull命令进行merge了。

       git pull

            ------ git pull的时候,我们看到有些文件时自动merge了,不过也有2个文件有冲突merger失败,有冲突的文件就需要我们手动解决冲突了。

      

       git stash pop 

             ------git stash pop,将前面保存的本地修改文件弹出,切回到我们之前修改文件的状态。看到有2个文件需要merge,接下来我们通过commit提交这2个文件。

      

       git commit 提交冲突文件

      

      [总结]:在提交本地修改之前,我们首先需要git pull来同步远程分支,如果有冲突,那么先通过git stash将本地的修改进行保存,然后再git pull同步分支,git pull过程中,产生需要手动解决冲突的文件,我们需要手动解决,手动解决完成后,再次git pull即可同步最新代码。

2、回退某次修改记录?    git revert

      git log 可以看到我们提交的记录,那我们想取消某些修改内容,那该怎么办呢?(只是单独取消某次commit的内容,对其它的提交没有影响)

      这时git revert 就派上用场了。

     

      如下图所示,我想回退红色框图的提交记录,提交的内容是添加了个text1.txt的文件,再这个提交的后面,还提交了个text2.txt。

      

      git revert +commit id

      

      git revert 之后,我们看下本地的文件情况,text2.txt还在,text1.txt没有了,ok,我们的目的达到了。

      

   3、回退最新的提交记录,修改记录的内容本地还是保留?  git reset --soft

        如下图所示,我想回退最新的修改记录,最新的修改记录,是添加了个测试的text3.txt文件。然后我希望回退这条修改记录后,本地的修改并没有被撤销,也就是本地还是保留着text3.txt这个文件。

            

       git reset --soft +commit Id

           ----- 我们把commit记录回退到添加text3.txt前面的id,然后再ls看下本地的文件,还是保留着text3.txt这个文件。

       

  4、在push之前,撤销某次commit内容?  git reset --soft HEAD^

        如下图所示,我本地提交了一个commit,不过还没有push提交到远程分支,然后我不想提交这个commit了。这时就可以采用git reset --soft HEAD^ 的命令,采用这个命令,只是撤销了最近一次的commit,本地的修改记录还是保留的。

             

       

5、更新修改commit描述的内容?git commit --amend

       如下图所示,“for test:new add text4.txt”,这个commit描述的内容,我想修改下。

         

       git commit --amend

              -------执行这个命令,将最近commit的描述内容进行修改,我修改成了“for test:text4.txt”。

         

   

写在后面:

      git 命令相关说明文档:https://git-scm.com/docs

------- 2020.03.21   

欢迎关注我的个人微信公众号,公众号会记录自己开发的点滴,还有日常的生活,希望和更多的小伙伴一起交流~~

(ps:本人目前在深圳上班)

猜你喜欢

转载自blog.csdn.net/Mr_ZJC/article/details/104315082