大家平时项目中都如何用 git 进行合作的?分享+学习

2014-03-03 09:48:34 +08:00
 lijinma
我们项目是这样使用的,(自己vps搭建的git服务器)

暂时称为:origin master

项目中多人A+B+C等

(1)A工作中先git fetch origin master,拿到代码后,修改代码,并提交到本地;

$ git commit ...

(2)A push代码:

1)再fetch origin master,获取最新版本,可能这个时候B或C有提交
2)$ git rebase origin/master
3)如果第二步出现代码conflic,就使用 git mergetool进行merge,如果没conflic,直接下一步
4)$ git push origin master



如上,我们不使用 git pull等操作;

不知道大家一般都如何使用git进行合作的?我们的做法是否可以更效率?
4457 次点击
所在节点    程序员
21 条回复
moto72
2014-03-03 10:00:51 +08:00
按照模块分发,完成自测没有问题在 push ,每次开工前都会先fetch 或者有内部fetch提醒时都会按需去fetch
Keyes
2014-03-03 10:07:19 +08:00
两个分支master、dev
开发从dev往下拉分支,自测没问题merge到dev
版本锁代码之后测试,没问题经理把dev merge到master
然后版本就对外发了,发完再从master拉回一个dev,循环 = =
顺带一提,redmine好东西
atian25
2014-03-03 10:08:05 +08:00
git-flow
ffts
2014-03-03 10:10:23 +08:00
好像pull就是fetch+merge?
akira
2014-03-03 10:13:45 +08:00
分支是个好东西
wuxqing
2014-03-03 10:15:56 +08:00
@Keyes 分享下redmine的经验?我安装了感觉很简陋呀
lijinma
2014-03-03 10:20:34 +08:00
@Keyes 多谢,我们现在代码review和分支管理做的不好,学习了。
lijinma
2014-03-03 10:22:06 +08:00
@ffts 好像是,你们用 git pull 吗
chmlai
2014-03-03 10:23:27 +08:00
参考git flow
lijinma
2014-03-03 10:36:25 +08:00
@chmlai
@atian25

多谢,正在看;
wuyexiong
2014-03-03 10:37:24 +08:00
@chmlai 对的. 补充一点就是 >>
##功能分支往develop拉之前,
1. 先checkout到develop分支下,把最新的代码pull下来,
2. 再checkout到你当前开发的功能分支,
3. 把develop rebase 到当前开发的功能分支,
4. 直接merge --no-ff 当前分支到develop ...搞定
lijinma
2014-03-03 10:59:58 +08:00
@wuyexiong
多谢 了解了
但你的3应该是: 把你当前开发的功能分支 rebase 到 develop 上把
atian25
2014-03-03 11:01:33 +08:00
http://www.zhihu.com/question/20070065/answer/16021641
底部有张我之前翻译的关于gitflow的图。
lijinma
2014-03-03 11:42:45 +08:00
@atian25 感谢,看来,你的回答真棒!
ffts
2014-03-03 12:27:07 +08:00
@lijinma 没,公司只有svn...
git一般是自己在家写代码,或者从github上下东西的时候用,我更新github的项目的时候是用git pull
其他的其实也没怎么用过...
ivenvd
2014-03-03 22:52:36 +08:00
git pull --rebase 就等于 fetch + rebase 啊。
forgottencoast
2014-03-04 09:19:55 +08:00
这个业界已经有很成熟的方案了。
常见的四种工作流模式参见 https://www.atlassian.com/git/workflows#!workflow-overview
我们公司采用gitflow流程模式。
lijinma
2014-03-04 10:06:39 +08:00
@ivenvd -.- 学习了,多谢
lijinma
2014-03-04 10:07:06 +08:00
@forgottencoast 继续学习!
Hysteria
2014-03-04 10:54:50 +08:00
小团队我觉得用github flow不错。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/102603

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX