提交更改或存储它们,然后才能切换分支。
错误:以下未跟踪的工作树文件将被结帐删除:
.c9 /元数据/ TAB1
.c9 /元数据/ tab11
.c9 /元数据/ tab12
.c9 /元数据/ tab17
.c9 /元数据/ tab18
.c9 /元数据/ tab23
.c9 /元数据/ tab24
.c9 /元数据/ tab25
.c9 /元数据/ tab26
.c9 /元数据/ tab27
.c9 /元数据/ tab28
.c9 /元数据/ tab29
.c9 /元数据/ tab30
.c9 /元数据/ tab31
.c9 /元数据/ tab33
.c9 /元数据/ tab5
.c9 /元数据/ tab6
.c9 /元数据/ tab8
.c9 /元数据/ TAB9
.c9 /元数据/工作区/ README.md
.c9 /元数据/工作区/应用/控制器/ application_controller.rb
.c9 /元数据/工作区/应用/控制器/ candy_pages_controller.rb
.c9 /元数据/工作区/应用/视图/ candy_pages / butterfinger.html.erb
.c9 /元数据/工作区/应用/视图/ candy_pages / home.html.erb
.c9 /元数据/工作区/应用/视图/ candy_pages / reeses.html.erb
.c9 /元数据/工作区/应用/视图/ candy_pages / skittles.html.erb
.c9 /元数据/工作区/应用/视图/ candy_pages / snickers.html.erb
.c9 /元数据/工作区/应用/视图/布局/ application.html.erb
.c9 /元数据/工作区/配置/ routes.rb中
.c9 / metadata / workspace / test / controllers / candy_pages_controller_test.rb
我如何摆脱这些?我添加了
#Ignore all .c9 specific files
/.c9/
到我的.gitignore
,但这对git已经跟踪的内容没有帮助。
我做了一个
$ git rm --cached .c9/ -r
但是当我试着回到主人那里时
$ git checkout master
由于工作树文件未经跟踪,我无法继续...有人可以帮我这个吗?
答案 0 :(得分:1)
我认为问题是,你已经在早期的一些提交中提交了这些文件,而这些文件现在已成为master的一部分。
如果是这种情况,执行git log .c9/
也会向您显示提交。要解决此问题,只需使用rm -rf .c9/
手动删除一次文件即可。如果您想保留这些文件,请将.c9
文件夹重命名为其他内容(mv .c9 .c9.bkp
)。如果您现在执行git status
,则有两种可能性,即.c9
目录中不再显示文件,或者有些文件将被修改。在后一种情况下,执行git checkout .c9
仅重新生成git正在跟踪的那些文件。
现在执行git pull origin master
,以获取最新的主分支。拉入更改后,请执行
git rm -r --cached .c9/
echo ".c9*" >> .gitignore
git add .gitignore && git commit -m "Removing .c9 metadata files"
现在,使用
将这些更改推送回主分支git push origin master
在处理任何其他分支时,首先将它们重新绑定(使用git rebase origin/master
),以便在另一个分支中提交的任何.c9
文件都不会回归到主服务器。
现在,您可以使用.c9
从我们制作的备份中恢复您的mv .c9.bkp .c9
文件夹。