Skip to content
GitLab
Explore
Sign in
Primary navigation
Search or go to…
Project
V
vcsh
Manage
Activity
Members
Labels
Plan
Issues
Issue boards
Milestones
Code
Merge requests
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Snippets
Deploy
Releases
Container Registry
Model registry
Monitor
Incidents
Analyze
Value stream analytics
Contributor analytics
Repository analytics
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
Community forum
Contribute to GitLab
Provide feedback
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
Kevin Lyda
vcsh
Commits
ce36573b
Commit
ce36573b
authored
13 years ago
by
Richard Hartmann
Browse files
Options
Downloads
Patches
Plain Diff
Make INSTALL easy to use by way of templating
parent
4f3d36f9
No related branches found
Tags
v1.20130614-1
Tags containing commit
No related merge requests found
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
INSTALL
+90
-22
90 additions, 22 deletions
INSTALL
with
90 additions
and
22 deletions
INSTALL
+
90
−
22
View file @
ce36573b
=The template way=
==Prerequisites==
Make sure none of those files/diretories exist for your test (user). If they do, move them away for now:
~/.gitignore
~/.mrconfig
~/.config/mr/available.d/mr.vcsh
~/.config/mr/available.d/zsh.vcsh
~/.config/mr/config.d/mr.vcsh
~/.config/vcsh/repo.d/mr.git/
All of the files are part of the template repo, the directory is where the template will be stored
apt-get install mr # this is optional, but highly recommended
==Clone the template==
mkdir -p ~/work/git
cd !$
git clone git://github.com/RichiH/vcsh.git vcsh
cd vcsh
ln -s vcsh /usr/local/bin
cd
vcsh clone git://github.com/RichiH/vcsh_mr_template.git mr.vcsh
==Enable your test repository==
mv ~/.zsh ~/zsh.bak
mv ~/.zshrc ~/zsh.bak
cd ~/.config/mr/config.d/
ln -s ../available.d/mr.vcsh .
cd
mr up
==Set up your own repos==
Now, it's time to edit the template config and fill it with your own remotes:
vim .config/mr/available.d/mr.vcsh
vim .config/mr/available.d/zsh.vcsh
And then create your own stuff
vcsh init foo
vcsh run foo git add -f bar baz quux
vcsh run foo git remote add origin git://quuux
vcsh run foo git commit
vcsh run foo git push
cp .config/mr/available.d/mr.vcsh .config/mr/available.d/foo.vcsh
vim .config/mr/available.d/foo.vcsh # add your own repo
Done!
==Daily use==
This is the beauty of it all. Once you are set up, just run:
mr up
mr push
Neat.
=The manual way=
# This is how my setup looks. Adapt to your style or copy mine verbatim, both is fine.
# This is how my setup looks. Adapt to your style or copy mine verbatim, both is fine.
# Create workspace
# Create workspace
mkdir -p ~/work/git
mkdir -p ~/work/git
cd !$
cd !$
# Clone vcsh and make it available
# Clone vcsh and make it available
git clone git://github.com/RichiH/vcsh.git vcsh
git clone git://github.com/RichiH/vcsh.git vcsh
PATH+=":$HOME/work/git/vcsh"
PATH+=":$HOME/work/git/vcsh"
export PATH
export PATH
# Grab my mr config. see below for details on how I set this up
# Grab my mr config. see below for details on how I set this up
~/work/git/vcsh/vcsh clone ssh://<remote>/mr.git
~/work/git/vcsh/vcsh clone ssh://<remote>/mr.git
cd ~/.config/mr/config.d/
cd ~/.config/mr/config.d/
ln -s ../available.d/* .
ln -s ../available.d/* .
# make vcsh work by default. Adapt for Bash etc as needed
# make vcsh work by default. Adapt for Bash etc as needed
cd
cd
zsh ~/work/git/vcsh/vcsh clone ssh://<remote>/zsh.git
zsh ~/work/git/vcsh/vcsh clone ssh://<remote>/zsh.git
ln -s ~/work/git/vcsh/vcsh .zsh/functions
ln -s ~/work/git/vcsh/vcsh .zsh/functions
zsh
zsh
...
@@ -27,15 +95,15 @@ zsh
...
@@ -27,15 +95,15 @@ zsh
# mr
# mr
~ % cat ~/.mrconfig
~ % cat ~/.mrconfig
[DEFAULT]
[DEFAULT]
include = cat ~/.config/mr/config.d/*
include = cat ~/.config/mr/config.d/*
~ % echo $XDG_CONFIG_HOME
~ % echo $XDG_CONFIG_HOME
/home/richih/.config
/home/richih/.config
~ % ls $XDG_CONFIG_HOME/mr/available.d # random selection of my repos
~ % ls $XDG_CONFIG_HOME/mr/available.d # random selection of my repos
git-annex gitk.vcsh git.vcsh ikiwiki mr.vcsh reportbug.vcsh snippets.git wget.vcsh zsh.vcsh
git-annex gitk.vcsh git.vcsh ikiwiki mr.vcsh reportbug.vcsh snippets.git wget.vcsh zsh.vcsh
~ %
~ %
# then simply ln -s whatever you want on your local machine from
# then simply ln -s whatever you want on your local machine from
# $XDG_CONFIG_HOME/mr/available.d to $XDG_CONFIG_HOME/mr/config.d
# $XDG_CONFIG_HOME/mr/available.d to $XDG_CONFIG_HOME/mr/config.d
~ % cd
~ % cd
~ % mr -j 5 up
~ % mr -j 5 up
This diff is collapsed.
Click to expand it.
Preview
0%
Loading
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment