summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJunio C Hamano <gitster@pobox.com>2025-07-21 15:46:42 -0700
committerJunio C Hamano <gitster@pobox.com>2025-07-22 07:01:21 -0700
commitf31abb421ddd37e9a13e5ffc2e5c5f10f0f0f9b9 (patch)
treebeec85ca5befae00a949d5ca6a37d6db136641c9
parent16bd9f20a403117f2e0d9bcda6c6e621d3763e77 (diff)
rev-list: update a NEEDSWORK comment
The comment is poorly phrased and it in't clear what it wanted to say. Strongly discourage this broken pattern to be copied and pasted to other code paths. Signed-off-by: Junio C Hamano <gitster@pobox.com>
-rw-r--r--builtin/rev-list.c22
1 files changed, 13 insertions, 9 deletions
diff --git a/builtin/rev-list.c b/builtin/rev-list.c
index 0984b607bf..baa9ba17d4 100644
--- a/builtin/rev-list.c
+++ b/builtin/rev-list.c
@@ -650,17 +650,21 @@ int cmd_rev_list(int argc,
*
* Let "--missing" to conditionally set fetch_if_missing.
*/
+
/*
- * NEEDSWORK: These loops that attempt to find presence of
- * options without understanding that the options they are
- * skipping are broken (e.g., it would not know "--grep
+ * NEEDSWORK: The next loop is utterly broken. It tries to
+ * notice an option is used, but without understanding if each
+ * option takes an argument, which fundamentally would not
+ * work. It would not know "--grep
* --exclude-promisor-objects" is not triggering
- * "--exclude-promisor-objects" option). We really need
- * setup_revisions() to have a mechanism to allow and disallow
- * some sets of options for different commands (like rev-list,
- * replay, etc). Such a mechanism should do an early parsing
- * of options and be able to manage the `--missing=...` and
- * `--exclude-promisor-objects` options below.
+ * "--exclude-promisor-objects" option, for example.
+ *
+ * We really need setup_revisions() to have a mechanism to
+ * allow and disallow some sets of options for different
+ * commands (like rev-list, replay, etc). Such a mechanism
+ * should do an early parsing of options and be able to manage
+ * the `--missing=...` and `--exclude-promisor-objects`
+ * options below.
*/
for (i = 1; i < argc; i++) {
const char *arg = argv[i];