我刚刚更改了我的项目名称,例如从OldP更改为NewP。 除版本控制外,一切都很好。
我正在使用XCode 7和iOS 9。
在Xcode - 版本编辑器中,每个文件都显示"文件是无版本的"。
在命令行中输入git status
,返回的结果如下:
On branch master
Changes to be committed:
(use "git reset HEAD <file>..." to unstage)
new file: NewP.xcodeproj/project-bak.pbxproj.bak
renamed: OldP.xcodeproj/project.pbxproj -> NewP.xcodeproj/project.pbxproj
renamed: OldP.xcodeproj/project.xcworkspace/contents.xcworkspacedata -> NewP.xcodeproj/project.xcworkspace/contents.xcworkspacedata
new file: NewP.xcodeproj/xcuserdata/xyz.xcuserdatad/xcschemes/xcschememanagement.plist
deleted: OldP.xcodeproj/xcuserdata/xyz.xcuserdatad/xcschemes/OldP.xcscheme
Changes not staged for commit:
(use "git add/rm <file>..." to update what will be committed)
(use "git checkout -- <file>..." to discard changes in working directory)
modified: NewP.xcodeproj/project.pbxproj
modified: NewP.xcodeproj/xcuserdata/xyz.xcuserdatad/xcschemes/xcschememanagement.plist
deleted: OldP/AppDelegate.swift
deleted: OldP/Base.lproj/LaunchScreen.xib
deleted: OldP/Base.lproj/Main.storyboard
...
...
...
...
...
Untracked files:
(use "git add <file>..." to include in what will be committed)
NewP.xcodeproj/xcuserdata/xyz.xcuserdatad/xcschemes/NewP.xcscheme
NewP.xcworkspace/
NewP/
NewPTests/
Podfile
Podfile.lock
Pods/
如果我执行git add .
和git commit -m "after changing project name"
,整个项目将再次进行版本控制。
In&#34; Source Control&#34; - &GT; &#34;历史&#34;,我仍然可以在那里看到每个修订历史,包括最新的修订历史。
但是,在&#34;版本编辑器&#34;中,只有两个版本:&#34;本地版本&#34;以及最新的承诺修订。在更改要在此处显示的项目名称之前,不再需要先前的修订。
输入git diff filename
,不会显示任何内容。
我知道这里的问题是因为在git存储库中,以前版本历史记录中的项目名称仍然是&#34; OldP&#34;,因此在比较新项目名称的版本时,&#34; NewP&#34;,它不会显示以前针对&#34; OldP&#34;。
的修订版有人可以建议如何解决这个问题,所以我仍然可以在我的新命名项目中看到以前的所有修订版本吗?
感谢。
答案 0 :(得分:0)
我已使用git filter-branch --tree-filter