new awesome feature tip
This commit is contained in:
parent
5881bbe75c
commit
02e6fc0a50
1 changed files with 37 additions and 0 deletions
|
@ -0,0 +1,37 @@
|
||||||
|
Sparkleshare and dvcs-autosync are tools to automatically commit your
|
||||||
|
changes to git and keep them in sync with other repositories. Unlike
|
||||||
|
git-annex, they don't store the file content on the side, but directly in
|
||||||
|
the git repository. Great for small files, less good for big files.
|
||||||
|
|
||||||
|
Here's how to use the [[git-annex assistant|/assistant]] to do the same
|
||||||
|
thing, but even better!
|
||||||
|
|
||||||
|
----
|
||||||
|
|
||||||
|
Let's suppose you're delveloping a video game, written in C. You have
|
||||||
|
source code, and some large game assets. You want to ensure the source
|
||||||
|
code is stored in git -- that's what git's for! And you want to store
|
||||||
|
the game assets in the git annex -- to avod bloating your git repos with
|
||||||
|
possibly enormous files, but still version control them.
|
||||||
|
|
||||||
|
All you need to do is configure git-annex to treat your C files
|
||||||
|
as small files. And treat any file larger than, say, 100kb as a large
|
||||||
|
file that is stored in the annex.
|
||||||
|
|
||||||
|
git config annex.largefiles "largerthan=100kb and not (include=*.c or include=*.h)"
|
||||||
|
|
||||||
|
Now if you run `git annex add`, it will only add the large files to the
|
||||||
|
annex. You can `git add` the small files directly to git.
|
||||||
|
|
||||||
|
Better, if you run `git annex assistant`, it will *automatically*
|
||||||
|
add the large files to the annex, and store the small files in git.
|
||||||
|
It'll notice every time you modify a file, and immediately commit it,
|
||||||
|
too. And sync it out to other repositories you configure using `git annex
|
||||||
|
webapp`.
|
||||||
|
|
||||||
|
----
|
||||||
|
|
||||||
|
It's also possible to disable the use of the annex entirely, and just
|
||||||
|
have the assistant *always* put every file into git, no matter its size:
|
||||||
|
|
||||||
|
git config annex.largefiles "exclude=*"
|
Loading…
Add table
Add a link
Reference in a new issue