使用 GIT 升级修改后的模块
upgrade a revised module using GIT
我在我的项目中使用了一个开源库。但是根据我的要求,我对开源库的很多部分代码进行了修改。
现在,有新版本的开源库,我想将我所做的更改合并到新版本的开源库中。
由于我可能需要对源代码进行更多的更改,并且会有下一个版本的库,我认为最好有一个半自动的方式来合并。
你应该有一个项目的分支并在你自己的分支上工作。
新版本发布后,您将能够(如果有的话,在解决冲突后)将其合并到您的帐户中。
首先,您可以在本地克隆 git 存储库并进行更改。
当您准备好将您的更改与新版本的开源库合并时,您可以按照以下步骤操作(假设您正在 master
分支上工作):
# on master branch
git pull origin master --rebase
# If there have conflict files, you can modify/save the files, then use `git add .` and `git rebase --continue`
git push origin master
要自动解决冲突文件,您可以使用-X
选项:
git pull origin master --rebase -X theirs
,通过保留本地 master
版本解决冲突文件。
git pull origin master --rebase -X ours
,保持origin/master
版本解决冲突文件。
和之前的许多人一样,您发现虽然创建分叉很容易,但维护分叉可能需要大量工作。
因此请考虑将您的更改贡献回原始 ("upstream") 项目。
上游接受的每个更改都是您永远不会必须再次合并...
我在我的项目中使用了一个开源库。但是根据我的要求,我对开源库的很多部分代码进行了修改。
现在,有新版本的开源库,我想将我所做的更改合并到新版本的开源库中。
由于我可能需要对源代码进行更多的更改,并且会有下一个版本的库,我认为最好有一个半自动的方式来合并。
你应该有一个项目的分支并在你自己的分支上工作。
新版本发布后,您将能够(如果有的话,在解决冲突后)将其合并到您的帐户中。
首先,您可以在本地克隆 git 存储库并进行更改。
当您准备好将您的更改与新版本的开源库合并时,您可以按照以下步骤操作(假设您正在 master
分支上工作):
# on master branch
git pull origin master --rebase
# If there have conflict files, you can modify/save the files, then use `git add .` and `git rebase --continue`
git push origin master
要自动解决冲突文件,您可以使用-X
选项:
git pull origin master --rebase -X theirs
,通过保留本地 master
版本解决冲突文件。
git pull origin master --rebase -X ours
,保持origin/master
版本解决冲突文件。
和之前的许多人一样,您发现虽然创建分叉很容易,但维护分叉可能需要大量工作。
因此请考虑将您的更改贡献回原始 ("upstream") 项目。
上游接受的每个更改都是您永远不会必须再次合并...