문제

Using the Egit plugin, is it possible to permanently remove a file from source control without deleting the local copy?

I.e., is there a GUI action equivalent to running "git rm --cached"?

(Edited to simplify question)

도움이 되었습니까?

해결책

I have found the answer. Team->Untrack is indeed the equivalent of "rm --cached". However there is a known bug which produces weird behaviour when you untrack and then try to commit.

https://bugs.eclipse.org/bugs/show_bug.cgi?id=363405

다른 팁

Team -> Advanced -> Untrack

did the job (git rm --cached) for me.

I had the same problem, after not initially including directories and files in .ignore. I also tried "Untrack" and "Remove from index" possibility, non of which helped(due to the still unresolved Egit issue). So, in the end I deleted files locally (leaving the project all in bugs), committed and pushed it to the github, and then undid the delete locally and added files to .ignore. Very unelegant, but it worked. I lost a lot of time and nerves on it, and I hope this helps someone.

Another option, similar to what Sri Sankaran suggests in the comments, is to update the index in order to assume no modification to your config file:

On the preferences, in Egit, you can list "assumed unchanged" files :

assume unchanged

The file remains versioned and on the disk, but no modification will be detected on it.

If you need to delete invisible folder(or file) from eclipse project:

  1. Add folder(or file) to .gitignore file;
  2. Replace folder to another directory
  3. Team add to index, commit and push
  4. Replace folder(or file) to the project folder
라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top