path: root/refs.c
diff options
authorJunio C Hamano <>2009-04-12 23:46:40 (GMT)
committerJunio C Hamano <>2009-04-12 23:46:40 (GMT)
commit6e353a5e5de9da021c7c6c0bc2dc5f95a39900a1 (patch)
treead981695b0376a42123220d98f3cc4cc74c2ca4b /refs.c
parenta54c4edc511608fdba513cc94812c31fd4b497f6 (diff)
parent13858e5770dd218e5318819d3273c916b46cf8e5 (diff)
Merge branch 'cc/bisect-filter'
* cc/bisect-filter: (21 commits) rev-list: add "int bisect_show_flags" in "struct rev_list_info" rev-list: remove last static vars used in "show_commit" list-objects: add "void *data" parameter to show functions bisect--helper: string output variables together with "&&" rev-list: pass "int flags" as last argument of "show_bisect_vars" t6030: test bisecting with paths bisect: use "bisect--helper" and remove "filter_skipped" function bisect: implement "read_bisect_paths" to read paths in "$GIT_DIR/BISECT_NAMES" bisect--helper: implement "git bisect--helper" bisect: use the new generic "sha1_pos" function to lookup sha1 rev-list: call new "filter_skip" function patch-ids: use the new generic "sha1_pos" function to lookup sha1 sha1-lookup: add new "sha1_pos" function to efficiently lookup sha1 rev-list: pass "revs" to "show_bisect_vars" rev-list: make "show_bisect_vars" non static rev-list: move code to show bisect vars into its own function rev-list: move bisect related code into its own file rev-list: make "bisect_list" variable local to "cmd_rev_list" refs: add "for_each_ref_in" function to refactor "for_each_*_ref" functions quote: add "sq_dequote_to_argv" to put unwrapped args in an argv array ...
Diffstat (limited to 'refs.c')
1 files changed, 8 insertions, 3 deletions
diff --git a/refs.c b/refs.c
index 59c373f..9ccaf40 100644
--- a/refs.c
+++ b/refs.c
@@ -647,19 +647,24 @@ int for_each_ref(each_ref_fn fn, void *cb_data)
return do_for_each_ref("refs/", fn, 0, 0, cb_data);
+int for_each_ref_in(const char *prefix, each_ref_fn fn, void *cb_data)
+ return do_for_each_ref(prefix, fn, strlen(prefix), 0, cb_data);
int for_each_tag_ref(each_ref_fn fn, void *cb_data)
- return do_for_each_ref("refs/tags/", fn, 10, 0, cb_data);
+ return for_each_ref_in("refs/tags/", fn, cb_data);
int for_each_branch_ref(each_ref_fn fn, void *cb_data)
- return do_for_each_ref("refs/heads/", fn, 11, 0, cb_data);
+ return for_each_ref_in("refs/heads/", fn, cb_data);
int for_each_remote_ref(each_ref_fn fn, void *cb_data)
- return do_for_each_ref("refs/remotes/", fn, 13, 0, cb_data);
+ return for_each_ref_in("refs/remotes/", fn, cb_data);
int for_each_rawref(each_ref_fn fn, void *cb_data)