在上一篇中,我们讲到了利用纯UI的软件如何实现代码的提交。但是在MAC机器上,是没有turtoiseGit这类软件的,所以利用命令行的方式就是我们的首选了。
下面我们来描述两种主要的Git使用场景:
场景一:在Git上有许多的开源系统,假如我想参与到开源软件的源码修改或者功能扩展中,利用Git的话,我们该如何做呢?
场景二:公司的代码寄托在Bitbucket上,并且针对开发团队新建了一个innovation_foundations_client的分支,开发团队需要提交代码给上级成员审核通过后,代码才能合并进去,该如何做?
其实这两种场景都可以利用如下的Git流程进行搞定。
第一步
在bitbucket中,打开项目所在的地址,利用git clone命令将代码复制到本地。这样我们在本地就创建了origin主分支。
git clone [email protected]:livemocha/advanced-english.git
第二步
我们需要建立本地与bitbucket上的代码的关联,并更新本地代码:
git fetch origin
第三步
我们去拿innovation_foundations_client分支上的代码,并对本地代码进行更新:
git checkout innovation_foundations_client
第四步
我们创建待提交的feature:
git checkout -b feature/SOMEDESCRIPTIVENAME
第五步
然后我们就可以对我们的项目进行任意的更改了,更改完毕以后,我们可以利用git status来跟踪哪些文件做了改变,对于这些改变的文件,我们可以利用git add命令将其包含到跟踪目录中。
第六步
当利用git status命令查看所做的更改都包含进来后,那么我们可以提交了:
git commit -m "SOME GOOD MESSAGE"
第七步
提交完毕以后,那么我们将其推送到远程服务器上:
git push origin feature/SOMEDESCRIPTIVENAME
注意这个feature的名称应该和之前创建的保持一致。
第八步
最后,你去bitbucket上,点击Create pull request菜单项,然后在左面选中你的feature,右面选择innovation_foundations_client,填写上comment,指定好reviewers,就可以提交了。
提交完毕以后,就可以在Pull requests菜单项中,看到自己提交的待审核的内容了。
其他
有时候,我们的本地代码没有及时更新,当我们需要更新的时候,我们可以运行 :
git pull origin master
那么就可以将远程的master主分支内容更新到本地,或者运行
git pull origin innovation_foundations_client
同样也可以将innovation_foundations_client子分支内容更新到本地。
这个需要根据项目情况而定来更新哪个,有时候两个都需要做的。