【问题标题】:github for mac doesn't allow to perform partial checkin/commitgithub for mac 不允许执行部分签入/提交
【发布时间】:2012-03-16 01:27:44
【问题描述】:

我正在使用 GitHub for Mac,并且在我的分支中进行了大量更改。我已经提交了一些更改,并让其他更改保持不变,因为我期待更多更改。但是,当我尝试同步以将这些更改推送到 Git 存储库时,它会抱怨 - “未提交的更改 - 请在同步之前提交所有更改。”

有什么想法吗?它是否希望在您进行同步时始终提交所有更改?

【问题讨论】:

  • 您是否将“sync”用作“pull”的同义词?
  • 同步是 Github for Mac 特有的,我相信它确实可以拉和推。
  • Daenyth..感谢反馈,@Chroipahtz - 同步来自 Mac 版 Github。虽然如果有任何命令可以用来推送单个文件,请随时提出建议。
  • @Waynn Lue 你是对的,推+拉。但是“同步”在 Windows 的 GitHub 客户端中的使用方式完全相同,因此它并不特定于 Mac :)。问题是在 Windows 客户端中,您可以与仍然存在的本地未提交更改同步。这就是为什么起初这让我如此困惑的原因。

标签: version-control github commit github-for-mac


【解决方案1】:

GitHub for Mac 确实为您提供了推送、拉取和同步更改的功能,而不是“同步”您的更改。不幸的是,UI 按钮仅用于同步。但是,如果您转到菜单栏,在“存储库”下,您会看到另外两个更改:推 (command + P) 或拉 (shift + command + P)。

【讨论】:

  • 谢谢,很有帮助
  • UI 令人困惑——尤其是对于刚接触 mac 客户端的用户而言。 +1 键盘快捷键。
  • 谢谢,这对您很有帮助!
  • 救命伴侣!在 Github 上添加两个非常有意义的按钮有什么害处!!!非常感谢
【解决方案2】:

由于我相信 sync 会同时执行 git pull 和 git push,因此它会尝试将远程存储库中的更改拉取并合并到本地分支。如果您想成功地将您的更改与未提交的本地更改同步,您应该存储您的更改,进行同步,然后取消存储您的更改。请记住,如果在 unstash 时发生冲突更改,则必须找出合并它们的正确方法。

编辑:在Repository 下,您可以执行push (Cmd + P) 或pull (Shift + Cmd + P)。

【讨论】:

  • ok..有什么手动方法可以从 git 命令行推送单个文件吗?
  • @Mutant - 你总是推送不是文件,而是changeset
  • 对,因为@Lazy Badger 所说,您只需要提交一个文件,然后推送该提交。
  • @WaynnLue - 我尝试了同样的事情。刚刚提交了一个文件,我在名为“未同步的提交”的单独部分中看到了该提交,当尝试单击该提交的同步时,它会引发错误,请在同步之前提交所有更改。所以我相信它在谈论未提交的更改。
  • @Mutant 如果您想在未提交更改的同时成功同步更改,您应该按照原始答案中的步骤操作。您必须存储任何未提交的更改,进行同步,然后取消存储它们。您要么必须从 git 命令行(需要安装)执行此操作,要么可以通过切换分支来执行此操作(mac.github.com/help.html 表示切换分支会自动为您存储)。但是你应该尝试做第一个,因为这可能是最好的方法。
猜你喜欢
  • 2016-07-02
  • 2019-10-16
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-09-12
  • 2015-10-25
  • 1970-01-01
相关资源
最近更新 更多