From 91a3fcdb20dd70ae30e6420e98a38e955866a9af Mon Sep 17 00:00:00 2001 From: Jonas Smedegaard Date: Mon, 8 Aug 2016 14:35:28 +0200 Subject: Add HOWTO. --- HOWTO.md | 78 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 78 insertions(+) create mode 100644 HOWTO.md (limited to 'HOWTO.md') diff --git a/HOWTO.md b/HOWTO.md new file mode 100644 index 0000000..93aed5e --- /dev/null +++ b/HOWTO.md @@ -0,0 +1,78 @@ +# Using digital source material + +> Use the source, Luke +> +> -- a [pun][UTSL] on Obi-Wan Kenobi quote in Star Wars + + +## Git + +Digital source material is tracked with git. + +Git is a version control system - +a repository for historic versions of file contents of a folder. + + + +## Create + + +To turn a folder into a git repository, +go into the folder, +and initialize its git database: + + git init + + +## Save + + +To "take a snapshot" of one of more files +for git archival, +first mark which files are involved +and then archive their (changes to) content: + + git add foo bar + git add baz + git commit -m "Update foo bar, and add baz." + +Alternatively you can update (but not add) +in one go: + + git commit -m "Update foo bar." foo bar + + +## Share + +To collaborate on a shared git repository, +first create a local copy from the shared location: + + git clone git://[[!template id=githost]]/example + +Then from time to time syncronize, +first fetch eventual updates from others +and then push your local changes: + + git pull + git push + +### Publish + +To publish a git repository initially created locally, +first create a new empty git publicly, +then your existing local git where its new origin will be, +and finally push your git into its new location: + + ssh [[!template id=githost]] git init --bare --shared /srv/git/[[!template id=githost]]/example.git + git remote add origin [[!template id=githost]]:/srv/git/[[!template id=githost]]/example.git + git push --set-upstream origin master + + +## References + +* [source][Source of this document] + +[UTSL]: + +[source]: . + "Digital source material" -- cgit v1.2.3