>>> Matthieu Moy <Matthieu.Moy@xxxxxxxxxxxxxxx> schrieb am 02.04.2014 um 19:54 in Nachricht <vpqob0jwrbb.fsf@xxxxxxxxxxxx>: > "Ulrich Windl" <Ulrich.Windl@xxxxxxxxxxxxxxxxxxxx> writes: > >> Hi! >> >> I have a small question: After a "git gc" with last commit being "[shared > 2679648]" I found this: >>> cat .git/HEAD >> ref: refs/heads/shared >>> cat .git/refs/heads/shared >> cat: .git/refs/heads/shared: No such file or directory >> >> Is this intentional? > > Yes. > >> commit in these files: .git/logs/HEAD .git/logs/refs/heads/shared >> .git/info/refs .git/packed-refs > > Yes, they are where the refs are stored. If you have many refs in your > repository, having one file per ref is inefficient. It's more efficient > for Git to have one big read-only file. When one ref is modified, the > .git/refs/heads/$branch file is re-created, and the packed entry is > ignored. > >> if [ -d .git ]; then >> GIT_HEAD="$(<.git/HEAD)" >> GIT_BRANCH="${GIT_HEAD##*/}" >> GIT_HEAD="Git:$GIT_BRANCH-$(cut -c1-7 .git/${GIT_HEAD##*: })" >> fi > > Don't access the filesystem. Ask Git. > > GIT_FULL_BRANCH=$(git rev-parse --symbolic-full-name HEAD) > GIT_BRANCH="${GIT_FULL_BRANCH##*/}" > GIT_HEAD="Git:$GIT_BRANCH-$(git rev-parse --short HEAD)" > > (Perhaps there's a simpler way without $GIT_FULL_BRANCH) Matthieu, thanks for this (it not so abvious how to use "git --rev-parse")! Ulrich -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html