Git includes a set of tools contributed by third parties. I’m not sure how I’m supposed to use these tools correctly.
For example, I’d like to use git-subtree. There seem to be a number of ways I could use this:
-
Copy to my path
cp /path/to/git-subtree.sh /usr/local/bin/git-subtree chmod +x /usr/local/bin/git-subtreeWorks fine, feels a bit hacky.
-
Symlink to my path
chmod +x /path/to/git-subtree.sh ln -s /path/to/git-subtree.sh /usr/local/bin/git-subtreeAlso works, feels marginally less hacky
-
Use a git alias
Add the following to my global .gitconfig file:
[alias] subtree = !/path/to/git-subtree.shThen good old chmod again:
chmod +x /path/to/git-subtree.shWorks, feels all nice and git-ish.
-
Use the Makefile
Per the INSTALL file.
cd /path/to/git-subtree.sh make make install make install-docDoesn’t work for me, it tries to install to a non-existent path. Perhaps this is because I installed git using homebrew rather than installing from source? I’m too lazy to investigate; I already have three working alternatives. 🙂
So my question is, which of these is the preferred way of installing git-contrib add-ons? Is there even a preferred way? Is there another option I haven’t suggested that’s better than the ones listed above?
Contribs is a collection of helpful things. You don’t install them as a package. For example, to install the tab completion, you simply source that script from your .bash_profile script. Each contrib in that folder has it’s own way of using it.
as for compiling git from source
after you install all the prerequisites.