由于.c9文件,无法从cloud9提交bitbucket

时间:2015-04-12 04:11:46

标签: git cloud9-ide

提交更改或存储它们,然后才能切换分支。

  

错误:以下未跟踪的工作树文件将被结帐删除:
          .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

由于工作树文件未经跟踪,我无法继续...有人可以帮我这个吗?

1 个答案:

答案 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文件夹。