- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
我有一个源代码文件,由于某种原因以混合缩进结束(用于缩进的空格和制表符)。
我做了很多更改,现在我想在 git 中提交这些更改。不幸的是,我不小心指示我的编辑修复所有缩进。所以现在看起来我已经修改了很多行,其中唯一的变化是对空白的更改。
我的提交必须由我在 Gerrit 的同事审查, 因此随着变化增加大量噪音,出现大量纯空白变化的行。
我如何取消暂存文件中的所有行,其中唯一的变化是空格(或缩进),以便我的 git 提交仅包含实际更改的行?
(或者,我怎样才能只暂存文件中更改了多个空格的行?)
最佳答案
git diff -w --no-color [file names] | git apply --cached --ignore-whitespace
基本上,它应用的补丁将在没有空格更改的情况下应用 add 。你会注意到在那之后仍然会有未暂存的更改,它是留下的空白,要检查它们运行:git checkout .
关于Git unstage 行,唯一的变化是空白?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23910879/
我有一个未提交的变更集。我想提交一些更改,但不提交一些文件(例如在 git 中取消暂存文件)。这可以在 mercurial 中完成吗? 最佳答案 使用 -X选项 hg commit排除某些文件。您可以
我想根据 git documentation 从 git 历史记录中删除一些文件/文件夹,但由于 unstaged changes 而失败.我不清楚可能会像我一样进行哪些未分阶段的更改 git add
我有一个包含数百个新文件和不同文件的分支,我只想将其中的十几个 merge 到我的发布分支中。我尝试运行一个没有提交的普通 git merge 并自动暂存数百个我不想要的文件(除了发现数十个需要手动
我有一个源代码文件,由于某种原因以混合缩进结束(用于缩进的空格和制表符)。 我做了很多更改,现在我想在 git 中提交这些更改。不幸的是,我不小心指示我的编辑修复所有缩进。所以现在看起来我已经修改了很
git add -p 用于暂存更改,git checkout -p 用于交互式丢弃更改。如何取消 hunks 对索引的更改? (我认为 git unstage -p 或 git reset HEAD
我正在使用 vcs_info 将有关 git 的信息添加到我的提示中。我已经配置: setopt promptsubst autoload -Uz vcs_info
但是有一天,在 merge/dcommit 步骤之后,我发现 eclipse egit stage view status 与 cygwin 命令行中的 git status 不同。当一些文件在 ec
我已经开始与几个 friend 合作开展一个项目,他们使用 heroku git 存储库。 几天前我克隆了存储库,他们做了一些更改,所以我正在尝试获取最新的更新 我按照此处所述运行了 git pull
我在一个名为 new_nlp 的分支上,当我执行 git status 时,我得到以下信息: # On branch new_nlp # Changed but not updated: # (u
假设在一个由 git 版本控制的项目中进行了两组更改。一组已上演,另一组未上演。 我想通过在此状态(提交前)运行我的项目来重新检查阶段性更改。 有什么简单的方法可以放弃所有未暂存的更改,只留下暂存的?
我无法重置以在 JGit 中正常工作。 IE。我可以将所有文件添加到索引,我可以通过下面的命令从索引中删除/重置/取消暂存其中一些文件,但它不适用于所有文件。在 JGit 中取消暂存文件的正确方法是什
我在更改分支或重新设置分支时看到很多间歇性的 git 错误。有时它会告诉我我不能更改分支,因为它会与未暂存的更改发生冲突,即使我的分支是干净的(git status 显示“没有要提交,工作目录干净”)
我有一个包含 10.000 个文件的项目,我想将其推送到存储库。但在推送之前,我必须将它从 Unstaged 列表移到 Staged。愚蠢的问题,我没有看到任何像“全部移动”这样的按钮,它不理解拖放,
我在这里与一位开发人员合作,他发现了一个我以前从未遇到过的奇怪问题。他正在处理一个存储库,需要在推送之前从其他人那里 pull 最新的更改。他的所有更改都已提交。 $ git pull Cannot
使用 git 我可以看到一个文件相对于过去任何其他提交的差异: git diff commit file_name 这向我显示了 commit 中的版本与我当前未暂存的更改之间的 file_name
尝试执行 git pull 时,我得到“您有未暂存的更改。”。当我执行 git status 时,它说:没有什么可提交的(工作目录干净)。为什么? 我可以执行 git reset --hard,然后
我正在为repo编写一个预提交钩子,其中如果一些暂存的文件没有格式化,钩子将格式化文件并给出消息。这是钩子里的东西。以下是对剧本的一些澄清:。下面是产生我的问题的步骤:。其效果是:。有人能告诉我为什么
在 PHPStorm 的 Git 界面中,使用右键单击上下文菜单的“Git >”子菜单中的“+添加”选项可以轻松暂存文件和文件夹。但是,如何将它们从舞台上移除? 最佳答案 我找到了一种简单(但不明显)
Sourcetree 可以很容易地加载和取消加载大块头。而且还可以轻松地从大块头中选择特定的台词,然后将它们暂存或取消暂存。我试图弄清楚如何从命令行执行相同的操作。 我尝试在显示命令历史记录面板的情况
我正在尝试为具有本地版本、暂存版本和生产版本的 Wordpress 安装设置一个“简单”的 git 工作流。我想做的就是在本地进行更改,然后从本地推送到暂存,再从本地推送到生产。起初我认为这将是一项简
我是一名优秀的程序员,十分优秀!