1

我们的四个成员正在开发一个名为“Dev”的 Git 分支。我已经完成了一些工作,在尝试推送它时,它给了我一个错误,因为有人已经提交/推送到“开发”。它说先拉然后推,但是当我拉时,我修改的数据丢失了。但是,当我切换到使用 master 分支时,我恢复了。

我将如何将我的更改推送到“开发”而不删除其他开发人员的更改?

4

2 回答 2

0

您可以git stash在这种情况下使用。

#git stash
#git pull
#git stash pop / git stash apply <stash id> (you can look up the stash id with `git stash list`)

通常,如果您不修改同一行,git 会自动合并代码。否则,您应该有时手动合并代码,然后您可以提交并推送您的代码

于 2013-10-07T05:00:18.243 回答
0

如果您 先将其添加git pull到索引中并在.

git pull获取上游dev分支上游回购“ origin并将其合并到您当前的分支“ dev”。

但是,如果您没有提交,那么您的更改将“丢失”。

除非您仍然可以通过以下方式找到它们:

git fsck --lost-found  => give a SHA1
git cat-file -p SHA1 => see the content of your lost work

有关更多信息,请参阅“ Git pull deleted uncommitted changes ”。

于 2013-10-06T11:56:47.140 回答