From 76aed6ef732de38d82245b3d674f70bab30221e5 Mon Sep 17 00:00:00 2001 From: Owen Jacobson Date: Fri, 3 Jul 2015 22:31:49 -0400 Subject: Fuck it, serve the files directly. --- .html/git/integrate.html | 118 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 118 insertions(+) create mode 100644 .html/git/integrate.html (limited to '.html/git/integrate.html') diff --git a/.html/git/integrate.html b/.html/git/integrate.html new file mode 100644 index 0000000..828019f --- /dev/null +++ b/.html/git/integrate.html @@ -0,0 +1,118 @@ + + + + + The Codex » + Integrating with Git: A Field Guide + + + + + + + + +
+ + + + + +
+

Integrating with Git: A Field Guide

+

Pretty much everything you might want to do to a Git repository when writing +tooling or integrations should be done by shelling out to one git command or +another.

+

Finding Git's trees

+

Git commands can be invoked from locations other than the root of the work +tree or git directory. You can find either of those by invoking git +rev-parse.

+

To find the absolute path to the root of the work tree:

+
git rev-parse --show-toplevel
+
+

This will output the absolute path to the root of the work tree on standard +output, followed by a newline. Since the work tree's absolute path can contain +whitespace (including newlines), you should assume every byte of output save +the final newline is part of the path, and if you're using this in a shell +script, quote defensively.

+

To find the relative path from the current working directory:

+
git rev-parse --show-cdup
+
+

This will output the relative path to the root of the work tree on standard +output, followed by a newline.

+

For bare repositories, both commands will output nothing and exit with a zero +status. (Surprise!)

+

To find a path to the root of the git directory:

+
git rev-parse --git-dir
+
+

This will output either the relative or the absolute path to the git +directory, followed by a newline.

+

All three of these commands will exit with non-zero status when run outside of +a work tree or git directory. Check for it.

+
+ + + +
+
+ + +comments powered by Disqus +
+ + + + + +
+ + \ No newline at end of file -- cgit v1.2.3