【发布时间】:2016-03-11 21:47:03
【问题描述】:
我的主目录结构是/site_program_files/users/usr1
我不希望 Git 触及 /users 目录和子目录中的内容... 因此,我已将 /users 添加到我的 .gitignore 文件中并进行了提交然后推送。并且还使用 git rm -rf /users 删除了之前的内容。
但是现在,每次我推送它都会删除我的用户在托管网站上的 /users 目录中更新的所有文件。我想要的只是让 git 不影响服务器上 /users 子目录中的内容,无论我正在做什么来测试我的本地版本。我做错了什么?
【问题讨论】:
-
我猜是因为.gitignore。它会忽略所有文件,因此当您推送时,它会发送一个空文件夹来替换服务器上的文件夹。
-
这个 Git s*ht 的逻辑太糟糕了 ;-) 我只是希望它不要弄乱那个子目录,我该怎么办?
-
您曾要求 git 跟踪
users/中的所有内容,后来又告诉它删除users/中的所有内容。很自然,每个接受“从users/删除”提交的克隆都会删除users/目录;无论如何,这就是提交的全部内容!但从那时起,users/将保持不变。所以这对每个克隆都是一次性的,他们总是可以从以前的版本中检索users/中的文件。 -
其实@KeyWeeUsr 的说法是完全错误的。
.gitignore不会强制清空目录。它只是没有告诉您有要添加的文件。
标签: git