<分区>
GIT - 强制推送
任何人都可以通过示例告诉我何时使用 git push
以及何时使用 git push -f
吗?
标签 git
<分区>
任何人都可以通过示例告诉我何时使用 git push
以及何时使用 git push -f
吗?
最佳答案
push --force
有一个用例,即使对于初学者也是如此:当您更新 pull 请求时。
pull 请求意味着
但是:如果原始 repo 做出了自己的新提交,您需要在更新的“上游” repo 之上重新设置(重放您的提交)
git remote add upstream /url/original/repo
git checkout my_pr_branch
git rebase upstream/master
# test everything is still working
通过 rebase ,您正在更改新提交的 SHA1:您需要用 rebase 提交替换 PR 分支的已发布(推送)提交:
git push --force
这将更新现有的 merge 请求,这将考虑到这些提交的新版本。
由于您正在强制推送到您自己的 repo ( fork )和您自己的分支(PR 分支),您可以根据需要多次使用 --force
。
我展示了 force-with-lease in 2013 ,作为一种检测您想要强制推送的远程仓库是否发生任何事情的方法。
请注意,它变成了 more robust recently with Git 2.13 .
关于Git - 何时使用强制推送,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44671286/
相关文章:
Git 外壳 : git-shell-commands should exist rather than "What do you think I am? A shell?"
Github 贡献未显示在 Repository Graph 上
python - 如何从 gitpython 中的存储库路径获取变量中的 Ostream 或 Oinfo 列表?
git - 问题推送到使用 "Initialize repo with a README"选项创建的 GitHub 存储库
windows - Windows 命令行 merge 工具
git - 如何使用 grep 查看大多数提交发生在一周中的哪一天?
git 错误 : There are still logs under
git - 如何将 Swift Package Manager 与私有(private)仓库一起使用?