【问题标题】:Git why newly checked remote branch has changed files?Git为什么新检查的远程分支已更改文件?
【发布时间】:2017-12-01 06:10:09
【问题描述】:

我是 Git 新手。我已经在本地检查了新的远程分支。当我从远程检查一个新的新分支时,我不希望我的存储库的文件中有任何本地更改。

但不知何故,很少有文件显示更改。我在 Eclipse IDE 上使用 Git。

为什么会这样?我是不是对新分店结账的概念有误解?

更新

基于 Tim Biegeleisen 和 Sajib Khan 的 cmets,我的理解是错误的,因为当您将远程作为本地分支签出时,这是预期的行为,工作目录 ( Repository ) 中任何先前未提交的更改都将传递到新签出的当地分公司。

【问题讨论】:

  • 为什么您认为切换分支不会导致某些文件的存在/不存在发生变化?从你的描述中我看不出有什么出人意料的地方。
  • @TimBiegeleisen 我有一个新的远程副本,即本地和远程没有区别,那么为什么很少有文件在更改时显示?我之前在其他本地分支上的本地更改是否会带入这个新的远程本地结帐?
  • 您能否确保所有更改都在上一个分支(git status)中完美提交,然后签出到远程分支?
  • 我相信当你切换分支时,Git 默认会在你的工作目录中进行更改,该行为有一些例外。

标签: eclipse git


【解决方案1】:

简单来说,让我举例说明

认为您在 ma​​ster 分支中工作并添加一些新文件(例如 file1.txt 和 file2.txt)。现在您不 stagecommit 这 2 个文件,那么它将显示为 untracked 文件。

Master Branch

Untracked  files
    file1.txt
    file2.txt

在这个特定的时间点,您切换到另一个分支,那么未被跟踪的文件将显示在新的结帐分支中。

要解决这个问题,你可以采取以下两种方式

  1. Stash ma​​ster 分支中的文件,然后切换到另一个分支,现在它不会在新切换的分支中显示 master 未跟踪的文件。存储只不过是保存文件,然后在以后重用这些文件。

  2. 提交修改

【讨论】:

    猜你喜欢
    • 2016-10-20
    • 2014-04-27
    • 2018-09-13
    • 1970-01-01
    • 1970-01-01
    • 2020-02-27
    • 2020-03-15
    • 2016-09-28
    • 1970-01-01
    相关资源
    最近更新 更多