我一直在谷歌搜索和阅读各种帖子,尝试过以下两个命令:
``` git filter-branch --index-filter "git rm -rf --cached --ignore-unmatch Launcher\lib" --prune-empty -- --all ```
``` git filter-branch --tree-filter "rm -rf Launcher\lib" --prune-empty -- --all ```
但是都只得到了一个警告信息:
``` WARNING: Ref 'refs/heads/master' is unchanged ```
这个代码库有其他克隆版本和一个中央服务器。据我所知,我会将更改推送到服务器,其他人只需要获取并变基(不合并)即可。如果他们已经进行了更改,它是否仍然有效?
``` git filter-branch --index-filter "git rm -rf --cached --ignore-unmatch Launcher\lib" --prune-empty -- --all ```
``` git filter-branch --tree-filter "rm -rf Launcher\lib" --prune-empty -- --all ```
但是都只得到了一个警告信息:
``` WARNING: Ref 'refs/heads/master' is unchanged ```
这个代码库有其他克隆版本和一个中央服务器。据我所知,我会将更改推送到服务器,其他人只需要获取并变基(不合并)即可。如果他们已经进行了更改,它是否仍然有效?
index-filter
和tree-filter
版本的命令在最终存储库历史记录方面有什么区别吗?此外,--
,--all
和--prune-empty
参数分别是什么意思? - alpha_989