2013-01-15 167 views
0

我有一些git问题。我有内容的文件的.gitignore:Git回滚推,.gitignore - 忽略

uploads 
.htaccess 
robots.txt 
etc.. 

我所做的:

git commit -a -m "GIT TEST" 

和Git把我的文件:的.htaccess等(在的.gitignore)。为什么?我怎样才能取消这个提交? (提交推到回购“混帐推起源大师”)

回答

0

如果文件已经被git跟踪之前它被添加到.gitignore,它不会自动只是因为它是在.gitignore现在被忽略。您需要

git rm --cached .htaccess 
git commit 

告诉git停止跟踪该文件。你可以做到这一点在下提交和推送周期,但如果你真的需要修改的最新承诺删除的文件,你可以这样做:

git rm --cached .htaccess 
git commit --amend 
git push -f 

(但请注意,如果其他人可能已经获取的“坏”承诺 - 这会导致他们悲伤)。如果提交的问题不是最近的问题,而是回溯历史,您可以使用git filter-branch(确切的语法应该很容易找到的例子)跟着git push -f完成同样的事情,但是同样的注意事项适用。