我有一个目前仅使用主分支的 GitHub 存储库。有两个主要目录;“chrome”和“android”分别用于 Chrome 应用和 Android 应用。我想将“android”目录中的所有内容移动到一个新的“chrome”分支,并将“android”目录中的所有内容移动到一个新的“android”分支。我已经拥有所有文件的大量历史记录,并希望将这些历史记录保留在新分支中。
我该怎么做呢?我正在谈论的回购:https ://github.com/Gawdl3y/task-timer
我有一个目前仅使用主分支的 GitHub 存储库。有两个主要目录;“chrome”和“android”分别用于 Chrome 应用和 Android 应用。我想将“android”目录中的所有内容移动到一个新的“chrome”分支,并将“android”目录中的所有内容移动到一个新的“android”分支。我已经拥有所有文件的大量历史记录,并希望将这些历史记录保留在新分支中。
我该怎么做呢?我正在谈论的回购:https ://github.com/Gawdl3y/task-timer
创建您的分支,如下所示:
git branch chrome
git branch android
然后,一一操作树枝
git checkout chrome
rm -r android/
git commit -a
git checkout android
rm -r chrome
git commit -a
等等。即使移动文件也应该保留历史记录。祝你好运!
如果这两个文件夹包含不同的代码开发,则将文件夹分成两个单独的存储库可能是明智的。这可以按如下方式完成:
cd
进入项目副本git filter-branch --prune-empty --subdirectory-filter <folder-name>
将保留指定文件夹的文件的历史记录,并且包含所有提交的存储库现在将位于“新”版本化项目文件夹的根目录中。
注意:您的“chrome”或“android”目录在哪里