aboutsummaryrefslogtreecommitdiffstats
path: root/desktop/modules/git
diff options
context:
space:
mode:
Diffstat (limited to 'desktop/modules/git')
-rw-r--r--desktop/modules/git/README.md22
1 files changed, 22 insertions, 0 deletions
diff --git a/desktop/modules/git/README.md b/desktop/modules/git/README.md
new file mode 100644
index 0000000..57c8965
--- /dev/null
+++ b/desktop/modules/git/README.md
@@ -0,0 +1,22 @@
+# git
+
+The global git config (`~/.gitconfig`), every key, reached from the user
+page's "More git settings" button. Back returns to the user page.
+
+One row per value, grouped by section in file order, so a key set several
+times shows several rows. Enter saves a row, Escape undoes an edit, Remove
+drops that one value, and the Add row takes `section.key` and a value.
+"Edit in editor" opens the file in Sublime Text.
+
+`gitcfg` does every read and write, through `git config`, so the file keeps
+its comments and layout. `--fixed-value` makes a write touch one value of a
+multi-valued key. `set` and `unset` first check the old value is still
+there, because `--replace-all` with no match appends instead of failing, and
+the file may have changed in the editor. After every write the page reads
+the list again; a failure shows git's reason under its row.
+
+Checks: `./test-gitcfg.sh` (a throwaway `GIT_CONFIG_GLOBAL`) and
+`node desktop/modules/git/test_git.js`.
+
+Not here: per-repository, system and `[include]`d configs. A value holding a
+newline edits on one line; use the editor for those.