美文网首页Git程序人生Git
git可视化工具—GitKraken

git可视化工具—GitKraken

作者: JeasonHe | 来源:发表于2018-11-25 22:12 被阅读1020次
    1.推荐一款git的可视化工具

    gitKraken,这款工具操作比较方便,UI也是我喜欢的风格,对没有太多git使用经验的新手比较友好,学习成本相对较低。尤其喜欢的一点就是它的分支和提交非常清晰。


    gitKraken.png
    2.git进阶命令
    1.pull

    取回远程主机某个分支的更新,再与本地的指定分支合并,pull = fetch + merge

    //快进式合并
    git pull(fast-forward if possible)
    git pull(fast-forward only)
    ​
    //rebase
    git pull(rebase)
    
    //从远程分支获取最新内容,但是不合并。
    git fetch 
    
    2.merge和rebase

    合并分支,将当前分支移动到其他分支

    //两个词的字面意思: into 就是进入;到...里面  onto 移到...上面
    ​
    使用场景:本地master分支开发,远程master分支有新提交,需要合并远程分支到本地分支继续开发。
    ​
    原始分支:
     A---B---C  remotes/origin/master
     /
     D---E---F---G  master(本地)
    ​
    ​
    //将另一先提交的的分支合并到自己分支,然后继续开发,两条线
    merge 分支1 into 分支2
    ​
     A---B---C remotes/origin/master
     /         \
     D---E---F---G---H master(本地)
    ​
    ​
    //rebase到另一先提交的分支上继续开发,一条线
    rebase 分支1 onto 分支2
    ​
     remotes/origin/master
     |
     D---E---A---B---C---F'---G' master(本地)
    
    3.stash

    保存当前进度的代码

    //保存当前工作进度,会把暂存区和工作区的改动保存起来。
    git stash
    //显示保存进度的列表
    git stash list
    //恢复最新的进度到工作区
    git stash pop
    //除了不删除恢复的进度之外,其余和git stash pop 命令一样
    git stash apply
    //删除一个存储的进度。
    git stash drop
    //删除所有存储的进度。
    git stash clear
    
    4.push

    将代码提交到远程仓库

    //将本地分支内容提交到远程分支
    git push
    
    5.cherrypick commit

    将其他分支的某个提交合并到当前分支

    a--b--c--d--e--f   master
     \ 
     g--h--i--j   test
    当前在test分支,现在需要master的e提交的功能,在e 执行cherryPick commit
    a--b--c--d--e--f
     \
     g--h--i--j--e<
    
    6.reset commit

    将一个分支的末端指向另一个提交。这可以用来移除当前分支的一些提交,这两个提交之后会被删除。

    soft  缓存区和工作目录都不会被改变
    ​
    mixed  默认选项。缓存区和你指定的提交同步,但工作目录不受影响(只将缓存区的移除,工作目录不变)
    结果:工作目录不变,需要
    ​
    Hard 缓存区和工作目录都同步到你指定的提交(二者都移除)
    结果:在指定commit处执行reset hard,该处commit之后的所有提交被删除,没有记录
    
    7.revert commit

    在指定的某个提交上revert commit,他会做一个新的commit(去掉revert的commit)

    如图:在c commit执行revert,结果会在F之后提交一个新的commit,该commit不包含c commit的内容
    ​
    A---B---C---F remotes/origin/master              A---B---C---F---new(没有c的提交)
           /                      revert commit c -->          / 
         D---E master(本地)                                 D---E 
    
    8.checkout

    1.切换分支 2.用于从历史提交(或者 stage 缓存)中拷贝文件到工作目录

    参考:

    猴子都能懂的git入门

    代码回滚

    最后、欢迎关注我的小订阅号

    关注公众号,后台回复 "福利" 二字,分享一些不错的编程视频。


    wechat.jpg

    相关文章

      网友评论

        本文标题:git可视化工具—GitKraken

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