All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Nguyễn Thái Ngọc Duy" <pclouds@gmail.com>
To: Junio C Hamano <gitster@pobox.com>, git@vger.kernel.org
Cc: "Nguyễn Thái Ngọc Duy" <pclouds@gmail.com>
Subject: [PATCH 00/23] nd/sparse reroll
Date: Mon, 14 Dec 2009 17:30:43 +0700	[thread overview]
Message-ID: <1260786666-8405-1-git-send-email-pclouds@gmail.com> (raw)

Compared to the current series in pu, patch "Teach Git to respect
skip-worktree (reading part)" has been broken up into smaller patches.
builtin-commit.c is also fixed to make the two failed test cases in
t7011 now pass. Skip-worktree bit no longer relies on
CE_MATCH_IGNORE_VALID flag, which means 
"git update-index --really-refresh" respects skip-worktree bit too.  

The rest is unchanged.

Nguyễn Thái Ngọc Duy (23):
  update-index: refactor mark_valid() in preparation for new options
  Add test-index-version
  Introduce "skip-worktree" bit in index, teach Git to get/set this bit
  update-index: ignore update request if it's skip-worktree
  Teach ls-files and update-index to respect skip-worktree bit
  Teach diff machinery to respect skip-worktree bit
  Teach grep to respect skip-worktree bit
  Teach commit to respect skip-worktree bit
  Teach Git to respect skip-worktree bit (writing part)
  Avoid writing to buffer in add_excludes_from_file_1()
  Read .gitignore from index if it is skip-worktree
  unpack-trees(): carry skip-worktree bit over in merged_entry()
  excluded_1(): support exclude files in index
  dir.c: export excluded_1() and add_excludes_from_file_1()
  Introduce "sparse checkout"
  unpack-trees(): add CE_WT_REMOVE to remove on worktree alone
  unpack-trees.c: generalize verify_* functions
  unpack-trees(): "enable" sparse checkout and load
    $GIT_DIR/info/sparse-checkout
  unpack_trees(): apply $GIT_DIR/info/sparse-checkout to the final
    index
  unpack-trees(): ignore worktree check outside checkout area
  read-tree: add --no-sparse-checkout to disable sparse checkout
    support
  Add tests for sparse checkout
  sparse checkout: inhibit empty worktree

 .gitignore                                        |    1 +
 Documentation/config.txt                          |    4 +
 Documentation/git-ls-files.txt                    |    1 +
 Documentation/git-read-tree.txt                   |   52 ++++++-
 Documentation/git-update-index.txt                |   29 ++++
 Documentation/technical/api-directory-listing.txt |    3 +
 Makefile                                          |    1 +
 builtin-apply.c                                   |    2 +-
 builtin-clean.c                                   |    4 +-
 builtin-commit.c                                  |   11 +-
 builtin-grep.c                                    |    2 +-
 builtin-ls-files.c                                |   11 +-
 builtin-read-tree.c                               |    4 +-
 builtin-update-index.c                            |   78 ++++++----
 cache.h                                           |   10 +-
 config.c                                          |    5 +
 diff-lib.c                                        |    5 +-
 diff.c                                            |    2 +-
 dir.c                                             |  100 ++++++++----
 dir.h                                             |    4 +
 entry.c                                           |    2 +-
 environment.c                                     |    1 +
 read-cache.c                                      |   17 ++-
 t/t1011-read-tree-sparse-checkout.sh              |  150 +++++++++++++++++
 t/t2104-update-index-skip-worktree.sh             |   57 +++++++
 t/t3001-ls-files-others-exclude.sh                |   22 +++
 t/t7011-skip-worktree-reading.sh                  |  158 ++++++++++++++++++
 t/t7012-skip-worktree-writing.sh                  |  139 ++++++++++++++++
 t/t7300-clean.sh                                  |   19 +++
 test-index-version.c                              |   14 ++
 unpack-trees.c                                    |  181 +++++++++++++++++++--
 unpack-trees.h                                    |    6 +
 32 files changed, 994 insertions(+), 101 deletions(-)
 create mode 100755 t/t1011-read-tree-sparse-checkout.sh
 create mode 100755 t/t2104-update-index-skip-worktree.sh
 create mode 100755 t/t7011-skip-worktree-reading.sh
 create mode 100755 t/t7012-skip-worktree-writing.sh
 create mode 100644 test-index-version.c

             reply	other threads:[~2009-12-14 10:31 UTC|newest]

Thread overview: 30+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-12-14 10:30 Nguyễn Thái Ngọc Duy [this message]
2009-12-14 10:30 ` [PATCH 01/23] update-index: refactor mark_valid() in preparation for new options Nguyễn Thái Ngọc Duy
2009-12-14 10:30 ` [PATCH 02/23] Add test-index-version Nguyễn Thái Ngọc Duy
2009-12-14 10:30 ` [PATCH 03/23] Introduce "skip-worktree" bit in index, teach Git to get/set this bit Nguyễn Thái Ngọc Duy
2009-12-14 23:06   ` Greg Price
2009-12-15  3:51     ` Nguyen Thai Ngoc Duy
2009-12-15  7:20       ` Johannes Sixt
2009-12-15  8:05         ` Nguyen Thai Ngoc Duy
2009-12-14 10:30 ` [PATCH 04/23] update-index: ignore update request if it's skip-worktree Nguyễn Thái Ngọc Duy
2009-12-14 10:30 ` [PATCH 05/23] Teach ls-files and update-index to respect skip-worktree bit Nguyễn Thái Ngọc Duy
2009-12-14 10:30 ` [PATCH 06/23] Teach diff machinery " Nguyễn Thái Ngọc Duy
2009-12-14 10:30 ` [PATCH 07/23] Teach grep " Nguyễn Thái Ngọc Duy
2009-12-14 10:30 ` [PATCH 08/23] Teach commit " Nguyễn Thái Ngọc Duy
2009-12-14 10:30 ` [PATCH 09/23] Teach Git to respect skip-worktree bit (writing part) Nguyễn Thái Ngọc Duy
2009-12-14 10:30 ` [PATCH 10/23] Avoid writing to buffer in add_excludes_from_file_1() Nguyễn Thái Ngọc Duy
2009-12-14 10:30 ` [PATCH 11/23] Read .gitignore from index if it is skip-worktree Nguyễn Thái Ngọc Duy
2009-12-14 10:30 ` [PATCH 12/23] unpack-trees(): carry skip-worktree bit over in merged_entry() Nguyễn Thái Ngọc Duy
2009-12-14 10:30 ` [PATCH 13/23] excluded_1(): support exclude files in index Nguyễn Thái Ngọc Duy
2009-12-14 10:30 ` [PATCH 14/23] dir.c: export excluded_1() and add_excludes_from_file_1() Nguyễn Thái Ngọc Duy
2009-12-14 10:30 ` [PATCH 15/23] Introduce "sparse checkout" Nguyễn Thái Ngọc Duy
2009-12-14 10:30 ` [PATCH 16/23] unpack-trees(): add CE_WT_REMOVE to remove on worktree alone Nguyễn Thái Ngọc Duy
2009-12-14 10:31 ` [PATCH 17/23] unpack-trees.c: generalize verify_* functions Nguyễn Thái Ngọc Duy
2009-12-14 10:31 ` [PATCH 18/23] unpack-trees(): "enable" sparse checkout and load $GIT_DIR/info/sparse-checkout Nguyễn Thái Ngọc Duy
2009-12-14 10:31 ` [PATCH 19/23] unpack_trees(): apply $GIT_DIR/info/sparse-checkout to the final index Nguyễn Thái Ngọc Duy
2009-12-14 10:31 ` [PATCH 20/23] unpack-trees(): ignore worktree check outside checkout area Nguyễn Thái Ngọc Duy
2009-12-14 10:31 ` [PATCH 21/23] read-tree: add --no-sparse-checkout to disable sparse checkout support Nguyễn Thái Ngọc Duy
2009-12-14 10:31 ` [PATCH 22/23] Add tests for sparse checkout Nguyễn Thái Ngọc Duy
2009-12-14 10:31 ` [PATCH 23/23] sparse checkout: inhibit empty worktree Nguyễn Thái Ngọc Duy
2009-12-14 11:09 ` [PATCH 00/23] nd/sparse reroll Johannes Sixt
2009-12-14 11:11   ` Nguyen Thai Ngoc Duy

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1260786666-8405-1-git-send-email-pclouds@gmail.com \
    --to=pclouds@gmail.com \
    --cc=git@vger.kernel.org \
    --cc=gitster@pobox.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.