在GitHub中,我克隆了版本1的存储库并对其进行了更改。当我进行更改时,其他人也克隆了存储库并进行了更改,并提交了不在我本地机器上的更改,现在如果我想提交我的更改,那么他们的更改会被保留还是会被我的代码覆盖?我想合并这两个代码,以便保留它们的更改。
zf9nrax11#
您的更改不会覆盖其他更改。建议使用2种方法来处理您的情况:1.如果您的更改在其他文件中,而不是其他更改,只需为您的更改推送并打开PR。它将合并更改而不会出现问题。1.如果更改在相同的文件中,则存在合并冲突的风险,git无法自动确定要保留哪些代码。在这种情况下,我建议rebase。这将使您的更改在其他更改之后。2.1. git checkout main使用本地主分支2.2. git pull将更改从origin获取到本地主分支2.3. git checkout your_branch使用您的分支2.4. git rebase main获取您的更改并在更改后将其移动到。这可能会导致冲突,如果它只是按照说明解决它们。
git checkout main
git pull
git checkout your_branch
git rebase main
1条答案
按热度按时间zf9nrax11#
您的更改不会覆盖其他更改。建议使用2种方法来处理您的情况:
1.如果您的更改在其他文件中,而不是其他更改,只需为您的更改推送并打开PR。它将合并更改而不会出现问题。
1.如果更改在相同的文件中,则存在合并冲突的风险,git无法自动确定要保留哪些代码。在这种情况下,我建议rebase。这将使您的更改在其他更改之后。
2.1.
git checkout main
使用本地主分支2.2.
git pull
将更改从origin获取到本地主分支2.3.
git checkout your_branch
使用您的分支2.4.
git rebase main
获取您的更改并在更改后将其移动到。这可能会导致冲突,如果它只是按照说明解决它们。