我在GitHub上分叉某人的存储库,并希望使用原始存储库中的提交和更新来更新我的版本.这些都是在我分发我的副本后制作的.
如何引入在原点中所做的更改并将它们合并到我的存储库中?
我在Github上有一个repo的克隆,我在其中为上游创建了一个新功能.问题是,我在我的主分支中做了那个,它还包含我从其他克隆中提取的其他内容.这完全打破了我创建合理拉取请求的能力.
所以我想做以下事情:
并且,在将来,我将在分支机构中完成所有工作并创建拉取请求,同时离开我的主分支,只需合并来自上游的任何内容.
我的问题是:
有时当我尝试将head fork合并到我的基础fork中,或者我的基础fork合并到head fork中时,我在GitHub上收到以下消息:
"无法自动合并.别担心,你仍然可以创建拉取请求."
如果有冲突,如何查看冲突?
我已经阅读了大约10个不同的例子和各种命令但我不知道在我的情况下示例中的名称适用于基础,分支,分支等的不同名称.
在所有这些之后,我无法相信没有可以键入的命令来查看冲突,编辑冲突并继续合并.如果有,我还没有找到它.
首先这是不同的,因为这适用于所有分支而不是一个。(我发现的所有那些一次只为一个分支指定这个)
我在一个大约有 20-30 个分支的 repo 上工作(我知道我知道长篇大论的坏习惯)
无论如何,我正在使用 git bfg 清洁器删除一些旧的提交,在使用它之后,您需要删除并重新克隆代码或重置每个分支。
我知道如何使用设置分支
git fetch origin
git reset --hard origin/master
Run Code Online (Sandbox Code Playgroud)
但是有没有办法用一个命令重置每个分支,或者我必须一次做一个分支?
我忽略了很多本地文件,我不想处理复制和重写。(如 IDE 文件、计算机配置文件等...)
我已经分叉了一个github存储库,提交了一个提交(标题Some small changes),提交了一个pull请求,它被合并到主存储库中(提交标题Some small changes (#12),其中#12是pull请求号).到现在为止还挺好.
现在,当我想更新我的fork(git rebase upstream/master见这里)时,我在我的存储库中有两次这样的提交.先是Some small changes一次又一次Some small changes (#12).如果我创建一个新的pull请求,Some small changes则会再次将提交添加到pull请求中.
有两种方法可以解决此问题:
这两种情况都涉及重写我的历史并不得不强制推动.在提交拉取请求时,是否有更好的方法使fork保持同步?
“ Git Pull Force ”、“ git重置分支到原点”或者换句话说,拉出远程分支来覆盖本地分支,似乎是被广泛搜索的功能,尽管本地很少有下降,但人们对它的兴趣却越来越大。
\n对于不断壮大的团队和不断增加的开发人员数量来说,这绝对有意义。
\n\n目前,最短的工作解决方案非常冗长并且需要分支知识
\ngit reset --hard origin/<branch_name>\nRun Code Online (Sandbox Code Playgroud)\n\n\n\n
不幸的是,因为输入以下内容要快得多
\ngit pull\nRun Code Online (Sandbox Code Playgroud)\n然而,这也带来了其自身的挑战。历史分歧、合并冲突等等……
\n我们确实有这样的简写
\ngit push origin HEAD -u --force\nRun Code Online (Sandbox Code Playgroud)\n它将本地分支推<branch_name>送到原点,覆盖同名的远程分支<branch_name>并将其设置为自己的上游分支。
然而,没有这样的--force/ reset\xc2\xa0 替代git pull。
将此功能添加到git 的最佳方式是什么?
\n