Name |
Last commit
|
Last update |
---|---|---|
.. | ||
config.c | ||
discover.c | ||
env.c | ||
getters.c | ||
hashfile.c | ||
head.c | ||
headtree.c | ||
init.c | ||
message.c | ||
new.c | ||
open.c | ||
pathspec.c | ||
repo_helpers.c | ||
repo_helpers.h | ||
reservedname.c | ||
setters.c | ||
shallow.c | ||
state.c | ||
template.c |
When using templates to initialize a git repository, then git-init(1) will copy over all contents of the template directory. These will be preferred over the default ones created by git-init(1). While we mostly do the same, there is the exception of "HEAD". While we do copy over the template's HEAD file, afterwards we'll immediately re-initialize its contents with either the default "ref: refs/origin/master" or the init option's `initial_head` field. Let's fix the inconsistency with upstream git-init(1) by not overwriting the template HEAD, but only if the user hasn't set `opts.initial_head`. If the `initial_head` field has been supplied, we should use that indifferent from whether the template contained a HEAD file or not. Add tests to verify we correctly use the template directory's HEAD file and that `initial_head` overrides the template.
Name |
Last commit
|
Last update |
---|---|---|
.. | ||
config.c | Loading commit data... | |
discover.c | Loading commit data... | |
env.c | Loading commit data... | |
getters.c | Loading commit data... | |
hashfile.c | Loading commit data... | |
head.c | Loading commit data... | |
headtree.c | Loading commit data... | |
init.c | Loading commit data... | |
message.c | Loading commit data... | |
new.c | Loading commit data... | |
open.c | Loading commit data... | |
pathspec.c | Loading commit data... | |
repo_helpers.c | Loading commit data... | |
repo_helpers.h | Loading commit data... | |
reservedname.c | Loading commit data... | |
setters.c | Loading commit data... | |
shallow.c | Loading commit data... | |
state.c | Loading commit data... | |
template.c | Loading commit data... |