git 工具
本地分支的创建本地分支的来源为执行git checkout -b
如果在master分支下checkout,即:git checkout master //进入master分支git checkout -b frommaster //以master为源创建分支frommastergit log后发现frommaster中有一个提交:commit1: add test1.c这说明他是从master分支为源头创建的如果在b1分支下checkout,即:git checkout b1 //进入master分支git checkout -b fromb1 //以b1为源创建分支fromb1git log后发现fromb1中已经有两个提交:commit2: add test2.ccommit1: add test1.c这说明他是从b1分支为源头创建的
远程分支的创建
需要说明的是,默认情况下这条语句等价于提交本地的master仓库到远程仓库,并作为远程的master分支。我从master分支创建了一个issue5560分支,做了一些修改后,使用git push origin master提交,但是显示的结果却是'Everything up-to-date',发生问题的原因是git push origin master 在没有track远程分支的本地分支中默认提交的master分支,因为master分支默认指向了origin master 分支,这里要使用git push origin issue5560:master 就可以把issue5560推送到远程的master分支了。 如果想把本地的某个分支test提交到远程仓库,并作为远程仓库的master分支,或者作为另外一个名叫test的分支,那么可以这么做。$ git push origin test:master // 提交本地test分支作为远程的master分支$ git push origin test:test // 提交本地test分支作为远程的test分支如果想删除远程的分支呢?类似于上面,如果:左边的分支为空,那么将删除:右边的远程的分支。$ git push origin :test // 刚提交到远程的test将被删除,但是本地还会保存的,不用担心