【问题标题】:Mac problems when doing git merge master with branch that has bower使用带有凉亭的分支进行 git merge master 时的 Mac 问题
【发布时间】:2016-07-16 07:13:16
【问题描述】:

对 git 和 mac 很陌生。

但我在 Atom 中使用 Git Plus 来通过 git 处理我的所有版本控制。但是如果我通过凉亭将组件/库添加到我的离子项目中,我会遇到很多问题。

在分支quick_fix 上工作并添加angular-cookies(ionic 将其存储在一个名为lib 的文件夹中)。更新代码并进行一些提交。

在使用bower 之后在 Atom 中执行此操作时遇到了一些问题,因此请尝试使用终端。所以我在终端中执行以下操作:

git checkout master

warning: unable to unlink www/lib/angular-cookies/.bower.json: Permission denied
warning: unable to unlink www/lib/angular-cookies/LICENSE.md: Permission denied
warning: unable to unlink www/lib/angular-cookies/README.md: Permission denied
warning: unable to unlink www/lib/angular-cookies/angular-cookies.js: Permission denied
warning: unable to unlink www/lib/angular-cookies/angular-cookies.min.js: Permission denied
warning: unable to unlink www/lib/angular-cookies/angular-cookies.min.js.map: Permission denied
warning: unable to unlink www/lib/angular-cookies/bower.json: Permission denied
warning: unable to unlink www/lib/angular-cookies/index.js: Permission denied
warning: unable to unlink www/lib/angular-cookies/package.json: Permission denied

所以这些文件现在仍在文件夹中......即使我回到没有热修复的主代码......

git status

On branch master
Untracked files:
  (use "git add <file>..." to include in what will be committed)

    www/lib/angular-cookies/

如果我尝试进行合并,我会得到以下结果

sudo git merge quick_fix

Updating 034f577..8b74fa5
error: The following untracked working tree files would be overwritten by merge:
    www/lib/angular-cookies/.bower.json
    www/lib/angular-cookies/LICENSE.md
    www/lib/angular-cookies/README.md
    www/lib/angular-cookies/angular-cookies.js
    www/lib/angular-cookies/angular-cookies.min.js
    www/lib/angular-cookies/angular-cookies.min.js.map
    www/lib/angular-cookies/bower.json
    www/lib/angular-cookies/index.js
    www/lib/angular-cookies/package.json
Please move or remove them before you can merge.
Aborting

如何进行合并?

我认为这个问题与在不做sudo 的情况下进行结帐有关。所以我没有授予它删除文件夹的权限..有什么方法可以授予永久 sudo 权限以删除此工作目录中的文件-因此 Atom 编辑器可以在不保留添加的组件的情况下对 master 进行结帐..

问题是我无法结帐quick_fix,因为它给了我同样的错误并中止。

【问题讨论】:

  • 在工作目录:sudo chown -R $(whoami) ./www/lib会给你带来正确的权限!
  • @dNitro 按照你的建议我遇到了以下问题discuss.atom.io/t/atom-helper-wants-to-make-changes/17260
  • 至少现在我们知道这不是 git 的问题,也不是 bower 的问题!这都是关于peimission的。而且似乎您的 Atom 没有以正确的权限运行,因此每次您要求更改时,它都会检查您的身份!
  • @dNitro 我该如何扭转它...?
  • 太棒了。快乐的 gitting :)

标签: git macos merge bower git-checkout


【解决方案1】:

在使用 bower 后在 Atom 中执行此操作时遇到了一些问题,因此请尝试使用终端。

这是个好主意,但您需要先关闭 Atom,然后再执行 git checkout。
否则,Atom 会保留这些文件的句柄,这会导致您看到错误消息。

在命令行中,尽可能多地关闭其他应用程序,以便进行所需的(干净的)结帐。
您可以先need a git clean,然后再在已签出的分支上恢复工作。

【讨论】:

  • 很高兴知道。谢谢!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2014-08-08
  • 1970-01-01
  • 1970-01-01
  • 2016-02-03
  • 1970-01-01
  • 2015-08-12
  • 1970-01-01
相关资源
最近更新 更多