Summary
=======
Let's see, nogit is a very simple tool that uses git under the hood to
-allow for collaboration on files, but without requiring the the
+allow for collaboration on files, but without requiring the
collaborators to invoke git commands. Any time a user might invoke
"git commit", or "git push", or "git pull", etc. the user instead just
invokes "nogit sync". And the user will not be prompted to fill out a
Preparing git repositories for use with nogit
=============================================
If you're interested in setting up a parent and child repository for
-use with nogit, here's what you'll want to do:
-
- In the parent repository
- ------------------------
- Add the following to .gitignore:
- .nogit
- .gitattributes
- Any files to be tracked in the child nogit repository
-
- For the child repository
- ------------------------
- Create a new git repository
- Add the files to be tracked via nogit
- Add a .gitattributes file with contents such as:
-
- * merge=union
-
- The * is a pattern to match the files you're tracking. You don't
- necessarily need to use '*' you can explicitly name the files of
- interest. But the important thing is that all files tracked by
- nogit use the "union" merge driver (so that merges don't result in
- conflicts requiring user intervention).
+use with nogit, there's almost nothing to it. In the child repository,
+just put all of the files you want to be treated with nogit's
+semantics. You don't need to fiddle with any .gitattributes or
+merge=union configuration. The nogit clone will do everything
+necessary for you so you get those semantics.
+
+Then, in the parent repository, you'll simply want to augment your
+.gitignore file to ignore all nogit-managed files from the child
+repository as well as the ".nogit" directory itself.
Motivation
==========