繁体   English   中英

Git更改文件名导致无法跟踪

[英]Git change filename has caused it to be not tracked

我有一个以前名为Favourite.rb的文件-我在代码编辑器中将其重命名为favourite.rb。我在bitbucket中推送了更改并注意到,该文件仍然是“ Favourite.rb”。 我正在运行Mac OS X-听说它不是区分大小写的文件系统。 因此,我尝试完全重命名文件-强制git进行更改。 还是行不通。 我尝试添加文件,还尝试了git mv,其中git表示它不受版本控制...但是我添加了它? 那么发生了什么!

请帮忙:

Andys-MacBook-Pro:models andy$ ls
age_collection.rb   category.rb     favourite.rb        mention.rb      user.rb
age_range.rb        concerns        follow.rb       session.rb      visit.rb
ahoy            event.rb        invitation.rb       sub_category.rb
attendee.rb     event_category.rb   like.rb         test.rb
Andys-MacBook-Pro:models andy$ git add .
Andys-MacBook-Pro:models andy$ git commit -am "all up to date"
On branch master
Your branch is up-to-date with 'origin/master'.
nothing to commit, working directory clean
Andys-MacBook-Pro:models andy$ git mv favourite.rb foo.rb
fatal: not under version control, source=app/models/favourite.rb, destination=app/models/foo.rb
Andys-MacBook-Pro:models andy$ 

安装OSX时,可以选择将驱动器格式化为区分大小写或不区分大小写。 听起来您是区分大小写的(大写字母很重要)。

git的作用是要重命名文件,您必须使用git来进行。 如果通过文本编辑器重命名该文件,则git将不知道该文件,并认为原始文件已被删除,并且将重命名的文件视为“未知”。

运行git statusfavourite.rb应该显示在“未跟踪的文件”下。 如果是这种情况,请将其重命名为Favourite.rbmv favourite.rb Favourite.rb ),然后通过git重命名原始文件: git mv Favourite.rb favourite.rb

git status将再次显示更改。 commitpush ,所有都应该在bitbucket上看起来正常。

将其重命名为具有原始大小写( mv favourite.rb Favourite.rb ),然后将其git mv命名为foo.txt, 然后通过 git mv将其命名为所需的大小写:

git mv Favourite.rb foo.rb
git mv foo.rb favourite.rb

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM