
[英]Git show only current state of files on branch and delete commit history
[英]Duplicate git branch, only files, no history, refs, etc
我正在尝试确定Git中是否有一种方法可以简单地获取repo1中master的当前状态(仅文件)并将其放置在单独的存储库repo2的master中。 基本上,我们在一个活动的仓库上工作,并且在本周结束时,我们也想在备份存储库上提交当前代码。 我首先虽然可以通过push --mirror来实现,但是这只会覆盖第二个存储库中的所有内容,而这并不是我想要的。 我将简要介绍一下我目前正在做什么,以便您可以了解我正在努力实现的目标:
基本上,通过上述操作,整个操作被视为对repo2的一个简单提交,而无需引用repo1的任何内容(我不需要其他分支的更改,不需要提交历史记录,等等)因此,有一种方法可以做到这一点在git中? 还是那里有一个实现此目的的shell /代码片段?
您可能可以借助git reset
实现您的目标。 您可以将repo1作为远程repo1添加到repo2,并定期在repo2上执行以下操作:
git fetch repo1 master
git checkout repo1/master
git reset master
git commit -a -m "synced from repo1/master"
这样,您将获得纯快照,而快照之间没有历史记录。 您仍然会在repo1/master
远程中保留此历史记录,如果不希望这样,您可以在repo1存储库中针对专用分支执行此操作,请说master_backup
并将其仅提取到repo2。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.