我在我的仓库中有一个与头部分离的分支,我在其中添加了相同名称的文件夹,其中包含不同的文件。每次当我想要提交某些东西时,我手动删除我的存储库中的文件夹,并添加具有相同名称但其中包含不同内容的新文件夹,我稍后提交并推送。问题是,当我检查我的一个过去的提交时,我看到该文件夹,它包含来自所选提交和过去提交的内容,但我希望仅从该具体提交中看到内容。所以,我想问一下是否有可能这样做,我该如何实现呢?也许我应该使用某种git命令从我的仓库中删除文件? (但如果真的我想确保上次提交的文件不会丢失)。
答案 0 :(得分:1)
每次提交之前,您还应该从跟踪文件中删除 git 跟踪的目录中的所有文件,执行git rm your_directory
。
如果你不这样做, git 会记住你在之前的提交中有其他文件,并且只是添加差异,而不删除那些文件没有出现在新提交中。
所以你需要告诉 git 你要删除文件,然后在新目录的副本之后再添加git add your_directory
的新文件。
这样 git 将:
您只需要在“文件系统级别”上手动执行相同操作,并在“git level”执行此操作。
如果那是你想做的事,请告诉我! 如果那样有效!
答案 1 :(得分:0)
您似乎希望在不暴露其完整历史的情况下查看提交。我认为最好的方法是使用孤儿分支。
你做 -
git --orphan <new_branch>
这将切换到一个干净的新分支,然后您可以签出到您想要的提交,然后该提交将是父提交,而不附加任何历史记录。