如何在我的git工作副本中撤消错误的权限?我应该再次克隆吗?

时间:2011-06-14 02:08:07

标签: git git-clone

我刚刚克隆了一个目录。在设置我的本地文件时,我不小心将错误的权限设置为目录和该文件夹中的所有内容(chmod -R 777 / foo)。

我想做的是'从头开始'。这是否像删除我的dev文件夹中的文件然后再次运行clone命令一样简单?

3 个答案:

答案 0 :(得分:4)

你可以这样做,或者你可以恢复。我建议你养成恢复的习惯,因为这就是git的用途!

重点是,你搞砸了,git会让你回到之前的签到。它不仅仅是一个推动你的代码的地方,而是一个让事情变得可怕错误的救星。也许你做了一个改变,现在有些事情被打破了。你是做什么?使用Git找出发生了什么变化,或者只是恢复到最新的工作版本!

如果您要删除dev文件夹中的文件,请确保同时删除.git目录。

答案 1 :(得分:3)

您也可以使用git reset --hard将所有更改还原到工作树。

答案 2 :(得分:1)

这会将工作副本中的文件恢复为HEAD提交中的权限。

git ls-tree -r HEAD|while read mode _ _ fpath; do chmod "$mode" "$fpath"; done