【发布时间】:2020-07-05 02:50:00
【问题描述】:
我不太确定这是否是 macOS/zsh 特有的问题,所以我还是要添加标签。考虑this dummy repository,带有一些虚拟文件夹和文件:
test_20200324:master
|-> test_folder_one
| |->....
|-> test_folder_two
| |->....
|-> test_files...
|-> setup.sh
还有一个master 分支。 setup.sh 被指示创建一个新的分支,结帐并重命名一个文件夹:
git branch production
git checkout production
git mv test_folder_two test_folder_four
现在运行脚本后,我希望看到一个新的分支:
test_20200324:production
|-> test_folder_one
| |->....
|-> test_folder_four
| |->....
|-> test_files...
|-> setup.sh
而master分支的内容是完整的。但是,由于某种原因,该脚本将整个存储库弄乱了(幸运的是,我还没有在实际生产中运行它!)。该脚本已在所有分支中重命名该特定文件夹。并且 master 分支也将其 test_folder_two 文件夹重命名为 test_folder_four。如果您能帮助我了解问题所在以及如何解决,我将不胜感激。
【问题讨论】:
-
标记 bash 或 zsh,不能同时标记两者。它们是不同的、相互不兼容的外壳。 (如果你有一个 zsh 脚本,不要在你的问题标题中加上“bash”!)
-
也就是说,至于真正的问题,我需要知道您如何检查或测试存储库的内容。
-
也就是说,在我看来,您根本就没有签入
git mv。在您将其提交到分支之前,它只是您工作树状态的一部分。 -
评论很容易被删除。此外,重要的是,您可以在聊天中粘贴比在 cmets 中更长的内容,我将要求您提供一些输出相当长的命令。
-
也就是说,cmets 永远不应该被期望作为答案,这听起来像是你希望他们做的事情。被索引等等。任何真正重要/预计会持续存在的内容都应编辑到问题中(如果对此进行了澄清)或复制到适当的答案中。