git只签出那些在具体提交过程中提交的文件



在我的存储库中,我有一个从head分离的分支,在那里我添加了同名的文件夹,其中包含不同的文件。每次我想提交某个文件时,我都会手动删除存储库中的文件夹,并添加一个同名但内容不同的新文件夹,然后提交并推送。问题是,当我签出我过去的一个提交时,我会看到那个文件夹,它包含所选提交和过去提交的内容,但我只想看到具体提交的内容。所以,我想问,有可能做到这一点吗?我应该如何实现这一点?也许我应该使用某种git命令从我的repo中删除这些文件?(但如果是真的,我想确保上次提交的文件不会丢失)。

每次提交之前,还应该从跟踪的文件中删除git跟踪的目录中的所有文件,执行git rm your_directory

如果您不这样做,git将记住您在上一次提交中有其他文件,并将添加差异,而不删除新提交中不存在的文件。

因此,您需要告诉git您正在删除这些文件,然后在新目录的副本之后,使用git add your_directory再次添加新文件。

这种方式git将:

  • 了解它必须删除旧文件/目录
  • 添加新文件/目录

您只需要在"文件系统级别"上手动执行相同的操作,也可以在<em]"git级别">上执行。

让我知道这是不是你想做的!如果成功的话!

您似乎希望在不公开其完整历史记录的情况下查看提交。我认为最好的方法是使用孤立分支。

你知道-

git --orphan <new_branch>

这将把你切换到一个干净的新分支,然后你可以签出到你想要的提交,这将是一个没有任何历史记录的父提交。

相关内容

  • 没有找到相关文章

最新更新