3
我以为我记得在某处读某种方式来做到这一点,但我找不到它。本地git签入 - 隐藏主存储库?
我在本地工作,甚至在当地的分支机构工作,而且我根据需要或每天或其他方式检查。当我将代码推到我想将其推送到主存储库的位置时,是否有办法按原样推送文件,而不是推送所有的历史记录?或者当我从一个分支合并回main时,我能否合并历史记录?
这些甚至是好主意吗?感谢您的帮助 - 仍在学习,在这里!
乔
我以为我记得在某处读某种方式来做到这一点,但我找不到它。本地git签入 - 隐藏主存储库?
我在本地工作,甚至在当地的分支机构工作,而且我根据需要或每天或其他方式检查。当我将代码推到我想将其推送到主存储库的位置时,是否有办法按原样推送文件,而不是推送所有的历史记录?或者当我从一个分支合并回main时,我能否合并历史记录?
这些甚至是好主意吗?感谢您的帮助 - 仍在学习,在这里!
乔
你可以合并更改为单一提交主枝上:
$ git checkout main
$ git merge --squash local
那丢弃当然,所有本地的历史。总而言之,这不是我想做的事情。相反,如果您担心在当地历史中发生的尴尬或妥协,请使用git rebase
来重写您的本地历史;之后,执行正常的合并并推出清理过的本地历史记录。
编辑/澄清:一个互动底垫可以让您轻松删除或“挤压”犯的历史:
$ git checkout local
$ git rebase -i main