相关疑难解决方法(0)

如何让git-diff和git log忽略新的和删除的文件?

有时会有一些已更改的文件以及一些新的,已删除和/或重命名的文件.在做git diff或者git-log我想省略它们时,我可以更好地发现修改.

实际上,列出新文件和已删除文件的名称是最好的.对于"旧"重命名为"新"我想选择性地区分"旧"和"新".

git git-diff

144
推荐指数
3
解决办法
2万
查看次数

同时git add -p和git checkout -p

我正在手动审查一些消息目录中搜索和替换脚本所做的大量更改(在1000年代).目前我正在做git add -p,但我一直在休息检查其他文件或调整脚本,所以我交替使用它git checkout -p来丢弃我不想要的更改.有没有办法将两者结合起来?即每个大块我希望选择暂存它,或丢弃它.

git

18
推荐指数
1
解决办法
401
查看次数

git:只播放新文件

当我有:

  • 脏工作目录,
  • 脏的集结区,
  • 我将一些新文件复制到项目中,

我该如何只上新的?

git alias adduntracked=…
Run Code Online (Sandbox Code Playgroud)

git bash scripting

9
推荐指数
1
解决办法
3364
查看次数

如何只添加非空白更改和新文件?

  1. 我们可以使用一些忽略空格的方法来做比较:

    1)git diff --ignore-space-at-eol#忽略EOL处空格的更改。

    2)git diff --ignore-space-change/ git diff -b#忽略空白量的变化。

    3)git diff --ignore-all-space/ git diff -w#全空格忽略

  2. 我们能做的

    git apply --ignore-whitespace\ git apply --ignore-space-change#应用补丁时忽略白蜡

但是,如何排除具有空格变化的文件git add *呢?

这些解决方案不适用于我:

1)

 git diff -w --no-color | git apply --cached --ignore-whitespace
Run Code Online (Sandbox Code Playgroud)

-有时会写入错误,并且不会添加新文件进行跟踪。

2)

 git add `git diff -w --ignore-submodules |grep "^[+][+][+]" |cut -c7-`
Run Code Online (Sandbox Code Playgroud)

-它会写错误并且什么也不做(可能是因为我有二进制文件,而不仅仅是文本文件)

PS:也许有办法用最后一次提交的文件替换文件(文件末尾有行空格,EOF之前有空格)。

git whitespace ignore gitignore removing-whitespace

5
推荐指数
1
解决办法
4758
查看次数