]>
git.madduck.net Git - code/vcsh.git/commitdiff
madduck's git repository
Every one of the projects in this repository is available at the canonical
URL git://git.madduck.net/madduck/pub/<projectpath> — see
each project's metadata for the exact URL.
All patches and comments are welcome. Please squash your changes to logical
commits before using git-format-patch and git-send-email to
patches@ git. madduck. net .
If you'd read over the Git project's submission guidelines and adhered to them,
I'd be especially grateful.
SSH access, as well as push access can be individually
arranged .
If you use my repositories frequently, consider adding the following
snippet to ~/.gitconfig and using the third clone URL listed for each
project:
[url "git://git.madduck.net/madduck/"]
insteadOf = madduck:
summary |
shortlog |
log |
commit | commitdiff |
tree
raw |
patch |
inline | side by side (parent:
ae01540 )
-function _vcsh-setup () {
+function _vcsh-upgrade () {
(( CURRENT == 2 )) && __vcsh_repositories
}
(( CURRENT == 2 )) && __vcsh_repositories
}
"list-tracked-by:list files tracked by a repository"
"rename:rename a repository"
"run:run command with <\$GIT_DIR> and <\$GIT_WORK_TREE> set"
"list-tracked-by:list files tracked by a repository"
"rename:rename a repository"
"run:run command with <\$GIT_DIR> and <\$GIT_WORK_TREE> set"
- "setup:set up repository with recommended settings"
+ "upgrade:upgrade repository to currently recommended settings"
"version:print version information"
"which:find <substring> in name of any tracked file"
"write-gitignore:write .gitignore.d/<repo> via git ls-files"
"version:print version information"
"which:find <substring> in name of any tracked file"
"write-gitignore:write .gitignore.d/<repo> via git ls-files"
post-enter
pre-run
post-run
post-enter
pre-run
post-run
+pre-upgrade
+post-upgrade
`vcsh` run <repo> <shell command>
`vcsh` run <repo> <shell command>
This is needed to support mr and other scripts properly and of no concern to
an interactive user.
This is needed to support mr and other scripts properly and of no concern to
an interactive user.
-* setup :
- Set up repository with recommended settings.
+* upgrade :
+ Upgrade repository to currently recommended settings.
* version:
Print version information.
* version:
Print version information.
is mandatory, though.
Available hooks are <pre-enter>, <post-enter>, <pre-run>, <post-run>,
is mandatory, though.
Available hooks are <pre-enter>, <post-enter>, <pre-run>, <post-run>,
-<pre-setup>, and <post-setup >. If you need more, vcsh is trivial to patch,
+<pre-upgrade>, and <post-upgrade >. If you need more, vcsh is trivial to patch,
but please let upstream know so we can ship them by default.
## DETAILED HOWTO AND FURTHER READING
but please let upstream know so we can ship them by default.
## DETAILED HOWTO AND FURTHER READING
<newname> Rename repository
run <repo> \\
<command> Use this repository
<newname> Rename repository
run <repo> \\
<command> Use this repository
- setup <repo> Set up repository with recommended settings
+ upgrade <repo> Upgrade repository to currently recommended settings
version Print version information
which <substring> Find substring in name of any tracked file
write-gitignore \\
version Print version information
which <substring> Find substring in name of any tracked file
write-gitignore \\
mkdir -p "$GIT_WORK_TREE" || fatal "could not create '$GIT_WORK_TREE'" 50
cd "$GIT_WORK_TREE" || fatal "could not enter '$GIT_WORK_TREE'" 11
git init
mkdir -p "$GIT_WORK_TREE" || fatal "could not create '$GIT_WORK_TREE'" 50
cd "$GIT_WORK_TREE" || fatal "could not enter '$GIT_WORK_TREE'" 11
git init
-setup () {
- hook pre-setup
+upgrade () {
+ hook pre-upgrade
use
git config core.worktree "$GIT_WORK_TREE"
git config core.excludesfile ".gitignore.d/$VCSH_REPO_NAME"
git config vcsh.vcsh 'true'
[ -e "$VCSH_BASE/.gitignore.d/$VCSH_REPO_NAME" ] && git add -f "$VCSH_BASE/.gitignore.d/$VCSH_REPO_NAME"
use
git config core.worktree "$GIT_WORK_TREE"
git config core.excludesfile ".gitignore.d/$VCSH_REPO_NAME"
git config vcsh.vcsh 'true'
[ -e "$VCSH_BASE/.gitignore.d/$VCSH_REPO_NAME" ] && git add -f "$VCSH_BASE/.gitignore.d/$VCSH_REPO_NAME"
[ "$1" = 'list-tracked-by' ] ||
[ "$1" = 'rename' ] ||
[ "$1" = 'run' ] ||
[ "$1" = 'list-tracked-by' ] ||
[ "$1" = 'rename' ] ||
[ "$1" = 'run' ] ||
+ [ "$1" = 'upgrade' ] ||
[ "$1" = 'write-gitignore' ]; then
[ -z $2 ] && fatal "$1: please specify repository to work on" 1
[ "$1" = 'rename' -a -z "$3" ] && fatal "$1: please specify a target name" 1
[ "$1" = 'write-gitignore' ]; then
[ -z $2 ] && fatal "$1: please specify repository to work on" 1
[ "$1" = 'rename' -a -z "$3" ] && fatal "$1: please specify a target name" 1