我有一个以下分支的裸仓库设置:
dev
*master
stage
prod
我已将其克隆到工作副本并发出以下命令:
git checkout -b stage remotes/origin/stage
git checkout -b dev remotes/origin/dev
我需要做的是将我的临时分支的全部内容推送到我的dev分支。基本上,这是第一次设置,我开始将生产代码推送到临时分支(完美地工作),现在我将我的登台代码推送到dev分支。
我遇到的问题是二进制文件的合并冲突。我怎么告诉git甚至没有看到合并冲突,而只是直接将stage分支的内容复制到dev分支?
答案 0 :(得分:3)
--s ours
的{{1}}选项听起来恰到好处。
http://book.git-scm.com/5_advanced_branching_and_merging.html
答案 1 :(得分:2)
您有几个选择:
选项1和3可能是最好的。你需要知道DAG(google“git for computer scientist”)。
我们使用此工作流程:https://plus.google.com/109096274754593704906/posts/R4qkeyRadLR
对我们来说非常好。
答案 2 :(得分:1)
决定解决问题的最简单方法是:
将repo克隆两次,一次进入dev文件夹一次进入stage文件夹 然后
cd dev
git rm -rf *
git commit -a -m "take that n00b repo!"
git push
cp -r ../stage/* .
git add *
git commit -a -m "how you like dem apples??"
git push
非常优雅,但它完成了工作,并且比处理git的合并冲突要痛苦得多。