我正在做一个大的python项目,如果有.pyc和 *~文件,我真的很不舒服。我想删除它们。我已经看到git clean的-X
标志会删除未跟踪的文件。正如你所想象的,我没有跟踪.pyc
或*~
文件。这将使技巧。问题是,我有一个local_settings.py
文件,我'I“我想把这件礼物保持干净。
所以,这就是我所得到的。
.忽略:
*.pyc
*~
local_settings.py
当我执行此命令时:
git clean -X -n -e local_settings.py
我得到以下结果列表:
将删除local_settings.py
将删除要求.txt~
会移除(其他一堆)~档案
将删除(其他一堆)pyc文件
我不想删除local_settings.py文件。我已经尝试了很多方法,但我不知道如何完成它。
git clean -X -n -e local_settings.py
git clean -X -n -e "local_settings.py"
git clean -X -n --exclude=local_settings.py
git clean -X -n --exclude="local_settings.py"
而且似乎什么都不管用。
编辑:
对于后人来说,正确的做法是(感谢@Rifat):
git clean -x -n -e local_settings.py # Shows what would remove (-n flag)
git clean -x -f -e local_settings.py # Removes it (note the -f flag)
5条答案
按热度按时间oxcyiej71#
不同的是您使用的大写
X
。使用小写的x
代替大写的x
。例如:git clean -x
.从the git documentation开始:
z5btuh9x2#
工作。我发现这个当我谷歌,并得到this page。
w6lpcovy3#
我把本地文件放在.git/info/exclude目录下(比如我的IDE项目文件),你可以这样清理:
其中:
您可以创建别名,例如:
--interactive意味着你必须执行git myclean -f来强制删除。
引用:http://git-scm.com/docs/git-ls-files(加上默认.git/info/exclude的第一行)
trnvg8h34#
如果你运行的是Python 2.6+,只需将环境变量
PYTHONDONTWRITEBYTECODE
设置为true
,你可以在.profile
或.bashrc
中添加以下内容,以便在你的配置文件中完全禁用它:或者,如果您只想为正在工作的特定项目执行此操作,则每次都需要在shell中运行以上代码(如果您使用virtualenv和virtualenvwrapper,则需要在virtualenv init脚本中运行),或者您可以在调用
python
时简单地传递-B
参数,例如:goqiplq25#
如果您已经提交了pyc等,请执行以下操作:
将 .pyc、~和local_settings.py添加到. gitignore中,然后在git仓库中执行以下操作:
然后执行:
现在他们应该不会再来烦你了