【问题标题】:what does this git output mean?这个 git 输出是什么意思?
【发布时间】:2019-01-25 15:40:29
【问题描述】:
user@host:~/dir$ git status
On branch master
Your branch is up to date with 'origin/master'.

nothing to commit, working tree clean
user@host:~/dir$ git checkout SMC_VFR_01_18_2019
Switched to branch 'SMC_VFR_01_18_2019'
Your branch is ahead of 'origin/SMC_VFR_01_18_2019' by 2 commits.
  (use "git push" to publish your local commits)
user@host:~/dir$

我担心在检查分支后会有待提交的提交。

【问题讨论】:

标签: git


【解决方案1】:

这可能意味着您还没有推送本地提交。尝试运行

git push

【讨论】:

  • 我没有编辑或提交任何东西!看看这一系列命令!
  • 命令不会告诉我们你做了什么改变。很明显有一些。
  • 因此,请不要轻易投反对票。我们在这里没有太多工作要做,这个答案是一个安全的假设。
  • @FrankPuck 你一定在某个时候提交过。否则它不会这么说。
【解决方案2】:

消息:

您的分支领先于 'origin/SMC_VFR_01_18_2019' 2 次提交。

意味着由于您已经同步了本地 SMC_VFR_01_18_2019 分支,因此您已经对该分支进行了两次提交而没有推送它们。请注意,origin/SMC_VFR_01_18_2019 实际上也是一个本地 分支,其目的是跟踪真正的远程SMC_VFR_01_18_2019 分支。有可能,自从您上次拉出此分支后,其他人也对远程进行了提交。

所以,你可以试试:

git fetch origin

将任何新的提交引入origin/SMC_VFR_01_18_2019,这可能发生在远程。然后,如果远程进行了新提交,您可能会看到一条消息,指出您的本地分支既在(您的提交)之前又在(其他人的提交)远程分支之后。

【讨论】:

  • 我不清楚,为什么远程编辑会显示为本地提交。
  • @FrankPuck 远程编辑实际上显示为origin/SMC_VFR_01_18_2019 分支上的本地提交,但不是您的本地分支。阅读有关在 Git 中跟踪分支以了解更多信息。
  • 所以你是说(完善我的困惑)这与在远程编辑不显示为需要推送的本地提交的普通主干上工作不同?
  • truck 对我来说听起来很像 SVN 语言。如果您真的不遵循我的回答,我建议您查看官方 Git 教程。我无法比我已经做过的更清楚地解释事情了。
  • 所有 git 命令和操作都在本地完成,除了 fetch、push 和 pull。你还没有将你的提交推送到原点。它们不是待处理,而是未共享​​>。没什么好担心的。
【解决方案3】:

来自官方文档

git 结帐

要准备工作,请通过更新工作树中的索引和文件并将 HEAD 指向分支来切换到它。保留对工作树中文件的本地修改,以便它们可以提交到。

注意:结帐后,会保留本地修改。因此,在您的情况下,我们在命令列表中看到的结帐之前已经存在本地修改。

【讨论】:

  • 工作目录中没有本地更改。查看命令列表!
猜你喜欢
  • 2020-11-09
  • 2011-12-19
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-02-26
相关资源
最近更新 更多