为什么提交和签出后文件夹会留在我的本地 git 工作目录中

2023-11-22

我创建了一个文件夹,其中包含本地工作 git 结构中的文件。我使用 git checkout -b 创建了一个新分支并使用了 git add 。和 git commit -m "..." 将这些文件添加到我的本地分支。但是,当我执行 git checkout master 时,我创建并提交的文件夹仍然存在。为什么?我认为 git commit 会将文件夹及其内容放入我的本地分支,当我签出 master 时将其切换出来。


如果您将以前未跟踪的文件添加到新分支,然后签出当前不跟踪这些文件的另一个分支,则不会将它们从您的工作副本中删除。

这是一个示例 - 假设我当前位于一个名为的干净分支上old_branch,然后我签出一个名为new_branch:

git checkout -b new_branch

然后,我创建一个名为的新文件test.txt在此分支中并将其添加到存储库中:

touch test.txt  # creates a new file named test.txt
git add test.txt
git commit -m "Added test.txt"

The test.txt文件当前由new_branch分支。但是,当我将分支切换回old_branch:

git checkout old_branch

Since test.txt未被跟踪old_branch,它将其保留在工作目录中并且不会覆盖它。这是预期的行为。如果你这样做git status此时,您会注意到test.txt文件当前未跟踪。


为了完整起见,如果您需要清除工作副本中所有未跟踪的文件,您可以首先执行以下操作:

git clean -n

这将列出所有将被删除的未跟踪文件。如果您对列表感到满意,您可以使用以下方法删除这些文件:

git clean -f -d

这是一个破坏性的命令,特别是因为它删除了当前分支未跟踪的文件。 (但它不会从跟踪这些文件的分支中删除它们。)

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

为什么提交和签出后文件夹会留在我的本地 git 工作目录中 的相关文章

  • 如何与其他用户共享 bitbucket 存储库?

    我正在使用 Bit 存储桶 并且我想与一位朋友分享我的存储库 我用的是免费的个人账户 似乎有一个选项可以在位桶中创建团队 但它说它将把我的帐户从个人帐户转换为团队帐户 我不要那个 我如何授予其他用户访问此存储库的权限 有一个共享链接选项 如
  • 在 git 中记录前 10 个

    两个问题 如何从头到尾显示 git 中的前 10 个提交 无分行 如何指定提交索引并记录它 显示第二个或第三个 我知道 git 使用父级来链接提交 很容易从头到尾记录提交 喜欢 git log HEAD 10 但我需要从头到尾查询 可以吗
  • Git rebase --继续而不打开编辑器

    调用时git rebase continue在正常的变基冲突之后 编辑器 GIT EDITOR 打开并要求修改提交消息 因为提交消息可能包含前导 所以这可能会失败 export GIT EDITOR true git rebase cont
  • gitattributes 中的`* text=auto eol=lf` 会做什么?

    我们的 gitattributes 文件中有这样的内容 text auto eol lf 我想准确理解这是做什么的 第一部分是text auto 来自文档 http git scm com docs gitattributes 这确保了所有
  • 将两个单独的功能分支合并到同一个主分支中[重复]

    这个问题已经存在了 我们正在努力发布 2 个远程功能分支 F2 和 F3 我们如何处理F3来创建发布 提案1 简单地合并F3进入开发 提案2 第一次合并开发进入F3 包括F2的变化 然后合并进入发展 这两种方法之间有什么实际差异 是否有客观
  • 无法快速删除 Git 中的许多文件

    我删除了 Git 分支中的 777 个文件新功能 by rm example 我愿意承诺 Git 要求我手动删除每个已删除的文件 git rm file 对于所有名称不相似的 777 个文件 编写上述命令将花费大量时间 如何删除我的 Git
  • 为什么 cmake 在 git commit 后编译所有内容

    假设我有时在 Linux 上使用 cmake 2 8 编译一段代码 我更改了一个文件 my changed file 运行 cmake 并且只构建了这个文件 到目前为止 一切都很好 现在我想提交这个 git add my changed f
  • 如何克隆没有提交的裸 git 存储库并在克隆过程中获取正确的 HEAD 引用?

    这个答案 https stackoverflow com a 26898059 438273声称该问题已在版本中修复1 8 4 3 但是我在版本中还是遇到了2 25 1 它似乎在版本中按预期工作2 32 0 所以我不确定它是什么时候真正修复
  • 无法在 git 上获取 Http 工作

    我在拇指驱动器上使用 gitbash 作为 git 我的防火墙阻止了我 并且想设置我的 git 以进行 http 访问 我使用 github 并且已经看到了有关如何执行此操作的各种信息 但我还不够了解 无法让它为我自己工作 我在 php i
  • 在防火墙后面使用 GitHub,无需 SSH 访问

    我真的很想使用 GitHub 但我的公司一切都被锁定了 现在 我只能通过HTTP协议使用Tortoise SVN 我可以以同样的方式使用 GitHub 吗 如果是这样 怎么办 我认为你一直能够克隆github https github co
  • 将存储库从 Github 移至 Gitlab

    有没有办法将整个存储库从 Github 移动到 GitLab 对于代码本身来说 只需在 GitLab 上创建一个新的存储库并推送到它即可 Wiki 页面位于 Github 上的单独分支中 并通过 Git 机制进行管理 据我所知 GitLab
  • Eclipse git checkout(又名恢复)

    是否可以做相当于git checkout在 Eclipse 中使用 Egit 插件 我有一个已修改的文件 我想放弃更改并将文件恢复到源存储库中的内容 在 Subversion 中 这称为恢复 在 git 中 相当于 checkout 我在团
  • 撤消多个文件和文件夹“git add”[重复]

    这个问题在这里已经有答案了 我执行了 git add 现在我想恢复 git add 我怎样才能做到这一点 git reset 这相当于git reset HEAD 将取消 add 更常见的是 取消暂存 所有文件 In Git revert用
  • 是否可以使用“最小”算法进行交互式添加?

    当从快照计算变更集时 Git 并不总是正确选择块边界 git diff has a diff algorithm允许在这方面进行一些调整的选项 git diff minimal有时会给出比git diff alone 有没有办法获得相同的优
  • 如何让“git status”始终使用短格式?

    我想要git status始终使用短格式 git status short M file1 M dir file2 file untracked3 dir file untracked4 似乎不存在这方面的配置选项 并且git config
  • 获取 git 存储库中每个文件的提交计数

    我正在寻找一种方法来查看有关 git 存储库中每个文件更改频率的统计信息 基本上 文件提交的频率实际上与以前的版本不同 此外 有没有办法获取文件上次更改的日期 我是一个 git 新手 还没有发现任何关于此的信息 任何帮助将不胜感激 这里有两
  • 竹子 - 构建我的拉取请求

    当拉取请求进入 git 时 我试图触发竹子中的构建 我可以将 webhook 信息发送到竹子 但它不是构建适当的 sha 标记的签入 而是构建 主 分支 这是否需要对竹子进行一些自定义 git 设置 到目前为止我还没有看到任何简单的事情 在
  • 在 MySQL 数据库上使用版本控制 (Git)

    我是一名 WordPress 设计师 开发人员 越来越多地使用版本控制 特别是 Git 尽管我确实在某些项目中使用 SVN 我目前正在使用 Beanstalk 作为我的远程仓库 将所有 WordPress 文件添加到我的存储库中是没有问题的
  • git 可以忽略特定行吗?

    我在手机的本机浏览器上测试时使用 git 同步到phonegap 因此我有以下行 var isPhoneGap false 显然 我在构建时更改了这一点 但是有什么方法可以设置 git 来忽略这一行 或者我是否必须将其放入自己的文件中并以这
  • 反向合并具有干净历史记录的缝合功能分支

    我有这个 d0 f1 d1 d2 f2 d3 merge d4 f3 merge

随机推荐

  • 当其他应用程序在 Android 中使用麦克风时,无法访问麦克风

    我使用以下 URL 中的代码通过 AudioRecord 从麦克风获取声音数据 http www dreamincode net forums topic 303235 visualizing sound from the micropho
  • 如何快速将分钟添加到当前时间

    我是 Swift 新手 正在尝试调度程序 我选择了开始时间 需要在开始时间上添加 5 分钟 或其倍数 并将其显示在UILabel IBAction func timePickerClicked sender UIDatePicker var
  • 有没有办法从 bash 运行 zip 文件中的 python 脚本?

    我知道有一种方法可以使用 python 导入 zip 文件中的模块 我在 zip 文件中创建了一种自定义 python 包库 我也想将我的 任务 脚本放入这个包中 这些脚本正在使用该库 然后 使用 bash 我想调用 zip 文件中所需的脚
  • cmdlet 如何知道何时真正应该调用 WriteVerbose()?

    cmdlet 如何知道何时really应该打电话WriteVerbose WriteDebug 等等 也许我错过了一些简单的事情 但我找不到答案 所有 cmdlet 到目前为止我见过的实现只是调用WriteVerbose 没有任何 犹豫 我
  • 在solaris中获取昨天的日期

    我正在运行 SunOS bash 3 00 uname a SunOS lvsaishdc3in0001 5 10 Generic 142901 02 i86pc i386 i86pc 我需要找到Yesterday s date in li
  • 如何在 web.xml 中的 标记中指定根上下文?

    我想在 WAR 文件中指定 Java Web 应用程序的根上下文 我怎样才能使用有效的方法来做到这一点web appXML 中的web xml file 哦 是的 我想以与应用程序服务器无关的方式执行此操作 这不能以与应用程序服务器无关的方
  • Typescript:我可以定义一个 n 长度的元组类型吗?

    我正在使用 Typescript 创建一个将棋游戏板 将棋盘有 9 个等级 我想将 9x9 多维数组断言为一种类型 以确保数组的大小和内容 目前我正在这样创建 9x9 板类型 type Board9x9 p P P P P P P P P
  • numpy.array 形状 (R, 1) 和 (R,) 之间的区别

    In numpy 一些操作恢复原状 R 1 但有些返回 R 这将使矩阵乘法更加繁琐 因为显式reshape是必须的 例如 给定一个矩阵M 如果我们想做numpy dot M 0 numpy ones 1 R where R是行数 当然 同样
  • 如何从颜色资源中获取 color-int?

    有什么方法可以从颜色资源中获取 color int 吗 我试图获取资源 R color myColor 中定义的颜色的各个红色 蓝色和绿色分量 以便我可以将三个搜索栏的值设置为特定级别 您可以使用 getResources getColor
  • 如何从android中的gradle依赖项添加的外部库目录中删除jar文件?

    首先 我在gradle中添加了依赖 然后同步项目 我们没有错误 但是当我们运行应用程序时 我们收到了一个错误 该错误也显示在图像中 app transformClassesWithJarMergingForDebug FAILED Erro
  • AppEngine Channel API - 检查通道是否仍然打开的最佳方法(服务器端)

    我已经在 AppEngine 上构建了一个社交网络 约会类型应用程序 目前正在添加基于 Channel API 构建的聊天 然而 我遇到的问题是用户可能会在聊天时重新加载或导航到新页面 就像在 Facebook 中一样 这意味着服务器不容易
  • Windows 上的 PHP PDO 安装 (xampp)

    我正在尝试开发一个可以在 PHP 上连接到尽可能多的不同数据库的 Web 应用程序 PDO http www php net manual en book pdo php 似乎是正确的接口 但我在安装我需要的所有不同 PDO 数据库驱动程序
  • 使用 Qt 4.4 的自定义停靠区域

    是否可以使用 Qt 4 4 创建自定义停靠区域 我知道这在 Qt 3 中是可能的 因为document建议 摘自文档 如果您需要创建自己的停靠区域 我们建议您创建 QWidget 的子类并将 Q3DockAreas 添加到您的子类 然而 在
  • “spark.yarn.executor.memoryOverhead”和“spark.memory.offHeap.size”之间的区别

    我在纱线上运行火花 我不明白以下设置有什么区别spark yarn executor memoryOverhead and spark memory offHeap size 两者似乎都是为 Spark 执行器分配堆外内存的设置 我应该使用
  • 以编程方式阅读、突出显示、保存 PDF

    我想编写一个小脚本 将在无头 Linux 服务器上运行 来读取 PDF 突出显示与我传递的字符串数组中的任何内容相匹配的文本 然后保存修改后的 PDF 我想我最终会使用类似的东西python 与 poppler 的绑定但不幸的是 文档几乎为
  • 带有圆角的数据网格模板

    I m creating DataGrid template with rounded corners but I faced with this problem 底角超出边界范围 怎么解决这个问题呢 我读过这篇文章 http diptim
  • 操纵可变参数的标准方法?

    这是一个奇怪的问题 但是有没有一种标准方法来操纵 a 的内容va list在将其传递给另一个函数之前 例如 假设我有两个函数 sum and vsum int vsum int n va list ap int total 0 for in
  • 从后台任务或服务确定当前前台应用程序

    我希望有一个在后台运行的应用程序 它知道任何内置应用程序 消息 联系人等 何时运行 所以我的问题是 我应该如何在后台运行我的应用程序 我的后台应用程序如何知道当前在前台运行的应用程序是什么 如果有经验人士的回复 我们将不胜感激 关于 2 我
  • 如何从阵列列表中添加多个音轨

    我想为单个音轨添加多个音轨video与此类似的文件https codepen io eabangalore pen NZjrNd 他们正在使用自己的jsvideojs 我有要切换的音轨列表 var usersAudioTrackList h
  • 为什么提交和签出后文件夹会留在我的本地 git 工作目录中

    我创建了一个文件夹 其中包含本地工作 git 结构中的文件 我使用 git checkout b 创建了一个新分支并使用了 git add 和 git commit m 将这些文件添加到我的本地分支 但是 当我执行 git checkout