完全替换应用程序时的Git最佳实践

时间:2017-06-01 22:26:57

标签: git

我们使用GIT作为我们的版本控制,我不是它的专家。所以最近我被其他开发人员要求删除存储库的所有内容并将其留空以便他可以上传新的应用程序(通过新的应用程序我的意思是解决方案和代码不同,但应用程序的想法是相同的,它会完全相同,只是重建),我告诉他的是删除所有文件,提交和推送,然后添加新的应用程序,提交并再次推送,这样我们就可以了解发生了什么旧申请,但我想知道我做的是否正确?或者应该更好地归档存储库并创建一个新的裸存储库,我在这个Post上读到GIT有一些孤立的分支,但我认为这不是我们的情况,因为没有更多的开发,旧分支上的错误修复等等,那么您对现有的做法或最佳做法有什么看法,我们不知道,请提前感谢您的回复和评论。

4 个答案:

答案 0 :(得分:1)

如果您打算使用公共存储库(即不将其设置为私有),我将看不到为应用程序创建新存储库的问题。

这样你就可以使用旧版本,并为新应用程序提供一个干净的存储库。

如果您真的想要替换repo中的当前项目,可以采用这种方式。我已经附加了另一个堆栈溢出问题的链接,他们会详细介绍这个问题。

Replace GitHub repository with a new Android Studio project while preserving old commits

虽然这个具体指的是Android Studio项目,但这些步骤仍然适用于您。

编辑(看到问题的更新后):

听起来你主要是修改相同文件中的代码。如果是这种情况,那么为什么不只是让它成为新的提交,覆盖文件的旧内容,而是保留提交历史记录?

答案 1 :(得分:0)

如果您的新开发树与旧开发树无关,我认为更好的方法就是创建新的存储库。或者,如果由于某种原因它是不可接受的,你可以从那里创建标签作为新的初始点和策略(可能不是好主意)。删除历史记录和所有数据并不好,很难真正从git中删除所有内容

答案 2 :(得分:0)

  

他可以上传一个与旧版本无关的新应用程序   一个

如果新申请与旧申请无关 - 那么混合历史并不是一个好主意。

  

所以我们可以了解旧应用程序发生了什么

如果您需要旧应用程序的历史记录,请将其保存在旧存储库中 并在新的存储库中创建新的应用程序。

答案 3 :(得分:0)

我会创建一个 orphan 分支,删除所有以前的代码并添加新代码。那么它将是同一个仓库中的2个分支:approachA,approachB。