teach git to respect fsmonitor in diff-index
Get series with b4
b4 am [email protected]Versions newest first · linked by author and title
- v2 Latest3 patches 4 repliesIn review
- v13 patches 3 repliesSuperseded
Patches in v2 No applies recorded yet
| # | Subject and files | Size | Replies | Applied |
|---|---|---|---|---|
| 1/3 | fsmonitor: skip lstat deletion check during git diff-indexdiff-lib.c | +4 | 2 replies | |
| 2/3 | fsmonitor: add assertion that fsmonitor is valid to check_removeddiff-lib.c fsmonitor.h | +22 | 2 replies | |
| 3/3 | fsmonitor: add perf test for git diff HEADt/ t/ | +6 | 0 replies |
Reviews trailers per patch
No Reviewed-by, Acked-by or Tested-by trailers for v2 yet.
Cover letter [PATCH v2 0/3] teach git to respect fsmonitor in diff-index
Skip lstat deletion check during git diff-index (similar to how it already does so in git diff-files). Add perf benchmark for this case. Add assert for guaranteeing that fsmonitor is refreshed in this case.
Update since Patch Series V1:
* Fix spaces->tabs issue in fsmonitor.h
* Remove comment in test-chmtime.c - to avoid it going stale
Nipunn Koorapati (3):
fsmonitor: skip lstat deletion check during git diff-index
fsmonitor: add assertion that fsmonitor is valid to check_removed
fsmonitor: add perf test for git diff HEAD
diff-lib.c | 23 +++++++++++++++-------- fsmonitor.h | 11 +++++++++++ t/helper/test-chmtime.c | 4 ++-- t/perf/p7519-fsmonitor.sh | 4 ++++ 4 files changed, 32 insertions(+), 10 deletions(-)
base-commit: 13d7ab6b5d7929825b626f050b62a11241ea4945
Published-As: https://github.com/gitgitgadget/git/releases/tag/pr-903%2Fnipunn1313%2Fnk%2Ffsmonitor-in-diff-index-v2
Fetch-It-Via: git fetch https://github.com/gitgitgadget/git pr-903/nipunn1313/nk/fsmonitor-in-diff-index-v2
Pull-Request: https://github.com/gitgitgadget/git/pull/903
Range-diff vs v1:
1: 75a3c46c4055 = 1: 75a3c46c4055 fsmonitor: skip lstat deletion check during git diff-index
2: dda5b537a3f0 ! 2: afd326c5011b fsmonitor: add assertion that fsmonitor is valid to check_removed
@@ fsmonitor.h: void refresh_fsmonitor(struct index_state *istate);
+ */
+static inline int is_fsmonitor_refreshed(const struct index_state *istate)
+{
-+ return !core_fsmonitor || istate->fsmonitor_has_run_once;
++ return !core_fsmonitor || istate->fsmonitor_has_run_once;
+}
+
/*
3: 740302586dd8 ! 3: f9d0fd594fdb fsmonitor: add perf test for git diff HEAD
@@ Commit message
## t/helper/test-chmtime.c ##
@@ t/helper/test-chmtime.c: int cmd__chmtime(int argc, const char **argv)
+ uintmax_t mtime;
+
if (stat(argv[i], &sb) < 0) {
- fprintf(stderr, "Failed to stat %s: %s\n",
+- fprintf(stderr, "Failed to stat %s: %s\n",
++ fprintf(stderr, "Failed to stat %s: %s. Skipping\n",
argv[i], strerror(errno));
- return 1;
-+ // Skip and move on - eg if it's a broken symlink
+ continue;
}Signature · 1 line
gitgitgadget