对于我从事个人小项目的业余爱好,该项目基于一个活跃的开源项目,该项目每天都在更新。
由于我与基础项目的开发人员保持密切联系,因此我必须能够更新存储库而不会破坏我自己的更改。
所以我想出了以下内容,我想知道如何实现这一目标是否存在某种常规流程。
现在我做了一个fork,并在fork存储库中处理了这个项目。我在开发人员修复的基础项目中遇到了一个错误。修复之后,我进行了合并,这导致了我的项目及其配置文件的灾难。
什么都没有,但这并不容易。
所以我想知道是否有某种普遍接受的方法可以实现我能够实现的情况:
答案 0 :(得分:0)
是的,这个问题有一个解决方案。首先,您必须更好地了解远程分支(和分支)的工作方式。然后使用fetch!
这是简短的回答。接下来是答案。
您的本地仓库有跟踪分支。也许,它是您正在处理的分支,其名称可能是master
。它跟踪的分支称为上游分支(可能它是您正在拉动的主分支,它的名称可能是origin/master
)。你应该知道这是两个不同的分支。要查看此内容,请尝试运行git branch -avv
,这将列出您的分支以及本地和远程分支之间的关系(如果存在)。它还告诉你有多少提交你没有被合并到origin / master中,反之亦然。
如果您希望在不与当前本地分支合并的情况下更新您的仓库,请使用fetch:git fetch origin
。这将更新您的本地仓库而不与您的工作目录合并。您可以稍后进行合并。
注意除非您有干净的工作目录,否则不应合并或拉出。如果不这样做,您可能想要创建提交,存储更改或在另一个临时分支中创建提交。
要获得更清晰的图像,也许您需要阅读git tutorial的this part。