美文网首页
git 使用小结

git 使用小结

作者: Binqi_zhang | 来源:发表于2017-06-05 17:03 被阅读0次

    一、git checkout -b git_doc;#创建本地分支

    git push origin git_doc;#分享到远程仓库

    git fetch origin;#获取远程仓库的所有信息

    git checkout -t origin/git_doc;# 其他开发人员基于origin/git_doc创建本地分支

    git branch --set-upstream git_doc origin/git_doc;# make an existing local branch to track a remote branch#为本地分支建立远程跟踪

    git pull;获取远程仓库的信息,并自动合并

    git checkout master;合并分支到主干

    git merge origin/git_doc

    git push origin master

    git push origin :git_doc;# 删除远程分支

    git branch -d git_doc;# 删除本地分支

    二、git branch

    git branch不带参数:列出本地已经存在的分支,并且在当前分支的前面加“*”号标记,例如:

    #git branch

    * master

    newbranch

    git branch -r列出远程分支,例如:

    #git branch -r

    m/master -> origin_apps/m1_2.3.4

    origin_apps/hardware/test

    origin_apps/m1

    origin_apps/m1_2.3.4

    origin_apps/master

    git branch -a列出本地分支和远程分支,例如:

    #git branch -a

    * master

    newbranch

    remotes/m/master -> origin_apps/m1_2.3.4

    remotes/origin_apps/hardware/test

    remotes/origin_apps/m1

    remotes/origin_apps/m1_2.3.4

    remotes/origin_apps/master

    git branch创建一个新的本地分支,需要注意,此处只是创建分支,不进行分支切换,例如:

    #git branch newbranch2

    #git branch

    * master

    newbranch

    newbranch2

    当前的分支依然是master,不进行切换。

    git branch -m | -M oldbranch newbranch重命名分支,如果newbranch名字分支已经存在,则需要使用-M强制重命名,否则,使用-m进行重命名。

    git branch -d | -D branchname删除branchname分支

    git branch -d -r branchname删除远程branchname分支

    例子:

    git help branch中的一个例子:

    $ git clone git://git.kernel.org/pub/scm/.../Linux-2.6 my2.6

    $ cd my2.6

    $ git branch my2.6.14 v2.6.14

    $ git checkout my2.6.14

    第三行符合git branch []的格式,即以v2.6.14为start-point,创建新的本地分支branchname。

    三、Git fetch和git pull的区别

    Git中从远程的分支获取最新的版本到本地有这样2个命令:

    1.$ git fetch <远程主机名> <分支名>:相当于是从远程获取最新版本到本地,不会自动merge

    git fetch origin master  //取回origin主机的master分支

    git log-p master..origin/master

    git merge origin/master

    以上命令的含义:

    首先从远程的origin的master主分支下载最新的版本到origin/master分支上

    然后比较本地的master分支和origin/master分支的差别

    最后进行合并

    上述过程其实可以用以下更清晰的方式来进行:

    git fetch origin master:tmp

    git diff tmp

    git merge tmp

    从远程获取最新的版本到本地的test分支上

    之后再进行比较合并

    2.git pull:相当于是从远程获取最新版本并merge到本地

    git pull origin master

    上述命令其实相当于git fetch 和 git merge

    在实际使用中,git fetch更安全一些

    因为在merge前,我们可以查看更新情况,然后再决定是否合并

    相关文章

      网友评论

          本文标题:git 使用小结

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