如何在git log命令结果中包含分支名称

如何在git log命令结果中包含分支名称,git,git-log,Git,Git Log,我列出了使用命令更改特定文件的提交 $ git log --all --graph --abbrev-commit --format=fuller --follow <path_to_filename> 查找包含特定提交的分支名称 有没有办法在git log命令中包含分支名称?我尝试使用中建议的命令,但无法使用--filename参数 我认为这是不可能的。您可以添加--decoration选项,但如果其中一个记录的提交恰好位于refs/heads中,则只会列出分支名称 我相信您必

我列出了使用命令更改特定文件的提交

$ git log --all --graph --abbrev-commit --format=fuller  --follow <path_to_filename>
查找包含特定提交的分支名称


有没有办法在
git log
命令中包含分支名称?我尝试使用中建议的命令,但无法使用--filename参数

我认为这是不可能的。您可以添加
--decoration
选项,但如果其中一个记录的提交恰好位于
refs/heads
中,则只会列出分支名称

我相信您必须编写自己的自定义包装才能实现这一点


这是令人沮丧和恼人的。一些git人会通过描述git架构来回应,并展示它是如何不容易实现的,在一些更复杂的情况下,它没有什么意义。我对这些都没有异议,但这是许多人会发现有用的东西,可以提高他们的生产力。

我认为这是不可能的。您可以添加
--decoration
选项,但如果其中一个记录的提交恰好位于
refs/heads
中,则只会列出分支名称

我相信您必须编写自己的自定义包装才能实现这一点


这是令人沮丧和恼人的。一些git人会通过描述git架构来回应,并展示它是如何不容易实现的,在一些更复杂的情况下,它没有什么意义。我对这些都没有异议,但这是很多人都会发现的有用的东西,可以提高他们的工作效率。

找到与您相同的问题,我为它编写了一个小bash包装

它不支持许多日志选项(
graph
all
是最显著的破坏者),但大多数
格式
选项应该是现成的

log_branch(){
    commit_list=$(git log --pretty="%H")
    for commit_hash in $commit_list;do
        show=$(git log -n 1 $commit_hash $@)
        branches=$(git branch --column --contain $commit_hash | sed -e 's/* /*/' -e 's/^[[:space:]]*//' -e 's/[[:space:]]*$//')
        output=$(echo "$show" | sed "s@$commit_hash@$commit_hash {$branches}@")
        echo "$output"
    done
}

上传到

发现了与您相同的问题,我为它编写了一个小的bash包装

它不支持许多日志选项(
graph
all
是最显著的破坏者),但大多数
格式
选项应该是现成的

log_branch(){
    commit_list=$(git log --pretty="%H")
    for commit_hash in $commit_list;do
        show=$(git log -n 1 $commit_hash $@)
        branches=$(git branch --column --contain $commit_hash | sed -e 's/* /*/' -e 's/^[[:space:]]*//' -e 's/[[:space:]]*$//')
        output=$(echo "$show" | sed "s@$commit_hash@$commit_hash {$branches}@")
        echo "$output"
    done
}

上传至

git log--graph--all--decoration duplicated:@AlejandroRosero您显然并没有阅读这个问题,也并没有亲自尝试过您的建议。我的链接指向几乎相同的命令,不能用--filename参数扩展,如question.git log--graph--all--decoration duplicated中所述:@AlejandroRosero您显然没有阅读question或亲自尝试您的建议。我的链接指向几乎相同的命令,它不能用--filename参数扩展,正如前面提到的。