Hello, This is the 11th iteration of C git stash. Here are some of the changes, based on Thomas's and dscho's suggestions (from mailing list / pull request #495): - improved memory management. Now, the callers of `do_create_stash()` are responsible of freeing the parameter they pass in. Moreover, the stash message is now a pointer to a buffer (in the previous iteration it was a pointer to a string). This should make it more clear who is responsible of freeing the memory. - added `strbuf_insertf()` which inserts a format string at a given position in the buffer. - some minor changes (changed "!oidcmp" to "oideq") - fixed merge conflicts Best regards, Paul Joel Teichroeb (5): stash: improve option parsing test coverage stash: convert apply to builtin stash: convert drop and clear to builtin stash: convert branch to builtin stash: convert pop to builtin Paul-Sebastian Ungureanu (17): sha1-name.c: add `get_oidf()` which acts like `get_oid()` strbuf.c: add `strbuf_join_argv()` strbuf.c: add `strbuf_insertf()` and `strbuf_vinsertf()` t3903: modernize style stash: rename test cases to be more descriptive stash: add tests for `git stash show` config stash: mention options in `show` synopsis stash: convert list to builtin stash: convert show to builtin stash: convert store to builtin stash: convert create to builtin stash: convert push to builtin stash: make push -q quiet stash: convert save to builtin stash: convert `stash--helper.c` into `stash.c` stash: optimize `get_untracked_files()` and `check_changes()` stash: replace all `write-tree` child processes with API calls Documentation/git-stash.txt | 4 +- Makefile | 2 +- builtin.h | 1 + builtin/stash.c | 1596 ++++++++++++++++++++++++++++++++++ cache.h | 1 + git-stash.sh | 752 ---------------- git.c | 1 + sha1-name.c | 19 + strbuf.c | 51 ++ strbuf.h | 16 + t/t3903-stash.sh | 192 ++-- t/t3907-stash-show-config.sh | 83 ++ 12 files changed, 1897 insertions(+), 821 deletions(-) create mode 100644 builtin/stash.c delete mode 100755 git-stash.sh create mode 100755 t/t3907-stash-show-config.sh -- 2.19.1.878.g0482332a22