这里我正在编写我提交代码的git命令。
git merge <branch1> --no-commit
所以我从那个分支获得了代码,我开始研究它。我确实只将代码合并为master。现在,在我完成了我的代码并尝试从master获得更改,而其他人也在使用它。
git pull origin master
我收到错误说MERGE_HEAD存在请提交您的文件。所以我通过输入这些命令来提交代码。
git add .
git commit -m "<commit message>"
现在我试图通过像往常一样重新调整代码来拉取代码。
git pull origin master --rebase
现在一切都很好,承诺看起来也不错。所以我去了codebase并检查了文件。我所有的改变都消失了。我哪里做错了?我还是不知道。请帮我找错。提前谢谢。
答案 0 :(得分:2)
以下是将您的更改从分支机构更改为主数据的步骤:
git checkout master
这是您要推送更改的分支
git pull origin master
检索您团队的提交
git checkout your-branch
检索你的分支
git rebase master
检索master的所有提交,之后进行更改
git checkout -b your-branch.1
你不能在你的分支上推送你的提交,因为你的本地分支与rebase重写历史记录不一样
git push origin your-branch.1
推送您准备合并的分支
git checkout master
这是您要合并的分支
git merge --no-commit --squash your-branch.1
将您的分支与master合并。壁球将把你所有的提交合二为一。没有提交会让你写一个很好的提交消息
git commit -m "here is my commit message"
善待你的团队成员了解你的变化
git push
发布您的更改
答案 1 :(得分:0)
git merge <branch1> --no-commit
所以我从那个分支获得了代码,然后我开始研究它。
这不是答案,但在这里你似乎做错了。通过不承诺,您将开发更改与之前的合并混合在一起。这可能会进一步破坏历史分析。