如果我执行 git diff
,将得到所有未暂存文件的当前更改。
有没有更简单的方法来自动执行 git diff
只针对第一个列出的文件(使用内置的标志)?
我想到的最好方法是:
function git_diff_first_unstaged_file() {
if [[ $(git diff --name-only) ]]; then
git diff $(git diff --name-only | sed -n '1 p')
else
echo "gdf: There are currently no unstaged changes."
fi
}
alias gdf='git_diff_first_unstaged_file'
我想知道是否有一个 git diff
的标识符可以帮我做到这一点。
git diff --name-only | sed -n 1p
,将输出保存在变量中,然后仅在有名称时对该保存的名称运行git diff
,以使其更加高效)。 - torekgit diff $(git diff --name-only | sed -n 1p)
,但是 if 语句也不错。无论如何,感谢确认我的理智关于标志的可能性 :) - Nico