Re: [PATCH 0/4] Pulling refs files
From: Junio C Hamano <hidden>
Date: 2016-06-15 22:41:57
I am having a bit hard time understanding how the end user uses what you are trying to give them. Is the basic idea to let them say "I want to get Pasky's $GIT_DIR/refs/heads/master and store it in my $GIT_DIR/refs/heads/git-pb, and then I want to start the pull starting from the commit recorded in that ref"? Assuming that is what you are doing, I do not have much objection to it. I however think introducing REFS_ENVIRONMENT is going overboard. My understanding of the definition of GIT_DIR is "the directory traditionally known as $(pwd)/.git/ where various things hang underneath". We have GIT_OBJECT_DIRECTORY configurable to be set to something other than $GIT_DIR/objects because people may want to use shared object pools. We have GIT_INDEX_FILE configurable to be set to something other than $GIT_DIR/index because being able to have it on tmp filesystem for some application (like "merge my head and his head without using what I have in my work dir which is a bit ahead of my head already") helps performance; also some Porcelain operations benefit from being able to switch between multiple cache files. I cannot think of a similar argument with an example use pattern that justifies REFS_ENVIRONMENT being set to anything other than $GIT_DIR/refs/.