问题标签 [git-status]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
git - git status 显示修改,git checkout --不删除它们
我想删除对我的工作副本的所有更改。
运行git status
显示文件已修改。
我所做的一切似乎都无法消除这些修改。
例如:
git-status - git status:如何忽略一些变化
有没有办法git status
忽略文件中的某些更改?
背景
我的存储库中有一些自动生成的文件(是的,我知道通常不建议这样做,但我无权更改它)。每当我构建我的树时,这些自动生成的文件都会在其中更新状态信息(生成它们的人、时间戳等)。
当我说 时git status
,我希望它对这些生成的文件运行一个过滤器,以去除这些临时状态信息。"Changed but not updated:"
如果有其他真正的变化,我只希望它显示在git 的输出部分。
使用https://git-scm.com/book/en/v2/Customizing-Git-Git-Attributes.gitattributes
中的方法,我可以使用简单的过滤器忽略这些状态行更改。我还想使用过滤器(或等效的东西)。git diff
egrep
git status
textconv
如果合并不受任何此过滤的影响,我会更喜欢它。
git - git:以编程方式知道分支在远程分支前面/后面的距离
我想提取在 a 之后打印的信息,git status
如下所示:
当然我可以解析输出,git status
但不推荐这样做,因为这个人类可读的输出很容易改变。
有两个问题:
- 如何知道远程跟踪的分支?它经常
origin/branch
但不一定是。 - 如何获得数字?如何知道它是否领先/落后?通过多少次提交?那么分歧分支案例呢?
git - 有没有办法告诉 git-status 忽略 .gitignore 文件的影响?
我已经配置了许多.gitignore
文件,以从一组大约 6,000 个未跟踪文件中过滤掉许多不同的不需要的文件。git add .
当我的过滤列表看起来像我想要的那样时,我想做。
但是,然后我想.gitignore
暂时禁用过滤器以查看留下了什么,并确保没有任何重要的意外过滤。
我知道这git-clean
包括忽略的选项.gitignore files
。有类似的选项git-status
吗?
我可以检查并删除所有.gitignore
文件,进行检查,然后恢复它们,但似乎应该有更简单的方法?
git - 如何在未跟踪的目录上执行“git status”?
我在一个子目录中有 6,000 个未跟踪文件,我正在构建 .gitignore 文件以过滤掉不需要的文件。我正在通过运行“git status”来测试我的 gitignore 过滤器。
但是,我在不同的子目录中有大量未跟踪的其他文件,因此“git status”也显示了所有这些文件,这使得很难看到 .gitignore 规则在做什么。
如果文件被跟踪,那么我可以做'git status'。并且它将 git-status 输出限制为仅当前目录中的那些文件,但是由于当前目录及其所有内容都未跟踪,因此“git status”。返回“错误:pathspec。不匹配 git 已知的任何文件。”
我为此使用了 git-1.6.6.1,尽管有趣的是我的测试表明 git-1.7.1 (在不同的系统上)实际上确实允许您在未跟踪的目录上执行 git-status 。不幸的是,我无法在这个系统上升级 git。-1.6.6.1 是否有已知的解决方法?
git - Git:如何创建不同的未合并状态?
什么时候出现不同的git status
未合并状态,added by us
例如added by them
或both deleted
?
我试图通过执行合并来重现后者,其中文件已在当前和合并的分支中被删除,但我无法创建此状态。
git - 如何解决 git status “未合并的路径:”?
我将分支合并dog
到animal
. 当我去提交时,我得到以下信息:
我在每个分支中都有不同的目录名和文件名。该animal
分支具有我想要的更改。
当我去重置头部时,它不起作用。当我去采取任何其他 git 操作(删除、结帐等)时,我得到一个path not found
错误。
我需要执行什么命令来解决这个问题?
git - Git:仅列出“未跟踪”文件(还有自定义命令)
有没有办法使用一个命令,比如git ls-files
只显示未跟踪的文件?
我问的原因是因为我使用以下命令来处理所有已删除的文件:
对于未跟踪的文件,我想要类似的东西:
我能够找到 的-o
选项git ls-files
,但这不是我想要的,因为它还显示被忽略的文件。我还能够想出以下长而丑陋的命令:
似乎必须有一个更好的命令我可以在这里使用。如果没有,我如何创建自定义 git 命令?
git - 如果当前位于子目录下,是否需要在 GIT 中取消暂存文件的完整路径?
回购:合并测试
$密码
/gitvobs/mergetest/苹果
$git 状态
在分支 br1
已更改但未更新:
(使用“git add ...”来更新将要提交的内容)
(使用“git checkout -- ...”丢弃工作目录中的更改)
$git checkout 里面
错误:pathspec 'inside' 与 git 已知的任何文件都不匹配。
$git checkout apple/inside完美运行
所以每次,当我在子目录中时,我是否需要指定文件的完整路径以取消暂存更改?
add 不是这种情况(我可以在任何地方使用 'git add file-name' 添加文件)
这是 GIT 的行为方式还是在其他版本的 GIT 中发生了变化?
我正在使用 git 版本 1.6.6
谢谢
git - 为什么 Git 不忽略我指定的文件?
我将以下行添加到.gitignore
:
但是当我键入git status
它时,它会将文件显示为未暂存的文件。
有什么问题?所有其他模式都运行良好。