开发者

Can Eclipse's Refactor > Move be integrated with Git?

开发者 https://www.devze.com 2023-03-23 03:00 出处:网络
One of the great things about using an IDE for Java is the automated refactorings you get. The problem I\'m having is that after using Refactor > Move to move a class into a different package (which m

One of the great things about using an IDE for Java is the automated refactorings you get. The problem I'm having is that after using Refactor > Move to move a class into a different package (which moves the file itself in the filesystem), git status shows that the file in the old location has been delete开发者_Python百科d, and the one in the new location has been added.

The workaround I've found is clunky:

mv src/com/example/newpackage/Foo.java src/com/example/oldpackage/Foo.java
git mv src/com/example/oldpackage/Foo.java src/com/example/newpackage/Foo.java

Is there any way (when using the Git plugin for Eclipse) to have the refactoring do a git mv instead of a naive filesystem move?


That's the way how Git works with renames/moves (delete old file and add new file). It then detects the contents of the file, and recognizes a rename based on an algorithm. So even it shows you delete and add, if you commit and then do a "git log --follow movedfilename", it should show you the whole history, even the history before the rename.

0

精彩评论

暂无评论...
验证码 换一张
取 消