我需要雇佣一些自由职业者,但不允许他们看到以前的提交,只是当前状态。所以我想在我的github上克隆一个私有的repo,删除。git的提交历史,将克隆的repo添加到github账户作为公共的,让自由职业者分叉这个repo,并将他们的更改发送pull请求。然后将这些更改连同我的整个提交历史一起拉回我原来的私有repo。
最好的方法是什么?由于
我不认为你将能够将更改全部拉回到你的private-repo-with-full-history,因为你希望public-repo和private-repo有效地具有不同的根提交。
我认为你最好的选择可能是:
- 使用
git archive
获取存储库的快照。 - 将其用作新公共存储库上的初始提交(从而压缩历史记录)。
- 允许开发人员分叉,工作和发送拉取请求。
- 使用以下命令之一将提交从公共存储库复制到私有存储库:
- public-repo中的
git format-patch
, private-repo中的git am
- 添加远程和
git cherry-pick
单独提交 - 添加两个远程,并
git rebase
您的公共分支到您的私有分支;在尝试这个之前,你应该对Rebase是如何工作的有一个很好的理解。
- public-repo中的