aboutsummaryrefslogtreecommitdiffstats
path: root/builtin/worktree.c
AgeCommit message (Expand)AuthorFilesLines
2025-11-26Merge branch 'pw/worktree-list-display-width-fix'Junio C Hamano1-12/+29
2025-11-18worktree list: quote pathsPhillip Wood1-2/+8
2025-11-18worktree list: fix column spacingPhillip Wood1-12/+23
2025-11-04refs: introduce wrapper struct for `each_ref_fn`Patrick Steinhardt1-5/+1
2025-07-23config: drop `git_config_set_multivar_in_file_gently()` wrapperPatrick Steinhardt1-1/+1
2025-07-23config: drop `git_config_set_in_file_gently()` wrapperPatrick Steinhardt1-2/+2
2025-07-23config: drop `git_config()` wrapperPatrick Steinhardt1-1/+1
2025-06-17Merge branch 'ly/do-not-localize-bug-messages'Junio C Hamano1-1/+1
2025-06-03BUG(): remove leading underscore of the format stringLidong Yan1-1/+1
2025-04-15object-file: move `safe_create_leading_directories()` into "path.c"Patrick Steinhardt1-4/+4
2025-03-10hash: stop depending on `the_repository` in `null_oid()`Patrick Steinhardt1-1/+1
2025-02-28path: drop `git_path()` in favor of `repo_git_path()`Patrick Steinhardt1-2/+9
2025-02-07path: drop `git_common_path()` in favor of `repo_common_path()`Patrick Steinhardt1-4/+12
2025-02-07worktree: return allocated string from `get_worktree_git_dir()`Patrick Steinhardt1-2/+8
2025-02-07path: drop `git_path_buf()` in favor of `repo_git_path_replace()`Patrick Steinhardt1-1/+1
2025-02-07path: drop `git_pathdup()` in favor of `repo_git_path()`Patrick Steinhardt1-2/+2
2024-12-23Merge branch 'ps/build-sign-compare'Junio C Hamano1-0/+2
2024-12-15Merge branch 'jc/forbid-head-as-tagname'Junio C Hamano1-4/+4
2024-12-13Merge branch 'cw/worktree-extension'Junio C Hamano1-12/+17
2024-12-06global: mark code units that generate warnings with `-Wsign-compare`Patrick Steinhardt1-0/+2
2024-12-03refs: drop strbuf_ prefix from helpersJunio C Hamano1-4/+4
2024-12-02worktree: add relative cli/config options to `repair` commandCaleb White1-2/+4
2024-12-02worktree: add relative cli/config options to `move` commandCaleb White1-1/+3
2024-12-02worktree: add relative cli/config options to `add` commandCaleb White1-9/+10
2024-11-26builtin: pass repository to sub commandsKarthik Nayak1-10/+18
2024-10-08worktree: link worktrees with relative pathsCaleb White1-7/+9
2024-09-23Merge branch 'jc/pass-repo-to-builtins'Junio C Hamano1-2/+5
2024-09-13builtin: remove USE_THE_REPOSITORY_VARIABLE from builtin.hJohn Cai1-1/+1
2024-09-13builtin: add a repository parameter for builtin functionsJohn Cai1-1/+4
2024-09-12environment: make `get_git_common_dir()` accept a repositoryPatrick Steinhardt1-2/+2
2024-08-23Merge branch 'ps/config-wo-the-repository'Junio C Hamano1-3/+3
2024-08-15Merge branch 'jc/refs-symref-referent'Junio C Hamano1-0/+1
2024-08-13path: stop relying on `the_repository` in `worktree_git_path()`Patrick Steinhardt1-2/+2
2024-08-13hooks: remove implicit dependency on `the_repository`Patrick Steinhardt1-1/+1
2024-08-09refs: add referent to each_ref_fnJohn Cai1-0/+1
2024-08-01builtin/worktree: fix leaking derived branch namesPatrick Steinhardt1-3/+4
2024-06-06Merge branch 'ps/leakfixes'Junio C Hamano1-9/+11
2024-05-30Merge branch 'ps/refs-without-the-repository-updates'Junio C Hamano1-1/+1
2024-05-27checkout: clarify memory ownership in `unique_tracking_name()`Patrick Steinhardt1-9/+11
2024-05-20Merge branch 'kn/ref-transaction-symref'Junio C Hamano1-1/+1
2024-05-17refs: rename `init_db` callback to avoid confusionPatrick Steinhardt1-1/+1
2024-05-07cocci: apply rules to rewrite callers of "refs" interfacesPatrick Steinhardt1-8/+11
2024-05-07refs: rename `refs_create_symref()` to `refs_update_symref()`Karthik Nayak1-1/+1
2024-04-05Merge branch 'jk/core-comment-string'Junio C Hamano1-1/+1
2024-03-15config: add --comment option to add a commentRalph Seichter1-2/+2
2024-03-12strbuf: accept a comment string for strbuf_stripspace()Jeff King1-1/+1
2024-02-06Merge branch 'jc/comment-style-fixes'Junio C Hamano1-5/+5
2024-01-29builtin/worktree: comment style fixesJunio C Hamano1-5/+5
2024-01-26Merge branch 'ps/worktree-refdb-initialization'Junio C Hamano1-28/+25
2024-01-08builtin/worktree: create refdb via ref backendPatrick Steinhardt1-26/+22
2024-01-08builtin/worktree: move setup of commondir file earlierPatrick Steinhardt1-3/+4
2024-01-02Merge branch 'jc/orphan-unborn'Junio C Hamano1-3/+3
2023-12-09worktree: simplify incompatibility message for --orphan and commit-ishRené Scharfe1-2/+2
2023-12-09worktree: standardize incompatibility messagesRené Scharfe1-8/+9
2023-11-24orphan/unborn: fix use of 'orphan' in end-user facing messagesJunio C Hamano1-3/+3
2023-08-29worktree: mark unused parameters in each_ref_fn callbackJeff King1-4/+4
2023-08-25Merge branch 'ja/worktree-orphan'Junio C Hamano1-1/+1
2023-08-13builtin/worktree.c: fix typo in "forgot fetch" msgJacob Abel1-1/+1
2023-08-04Merge branch 'ja/worktree-orphan-fix'Junio C Hamano1-2/+2
2023-07-26builtin/worktree.c: convert tab in advice to spaceJacob Abel1-2/+2
2023-07-17Merge branch 'cw/compat-util-header-cleanup'Junio C Hamano1-1/+0
2023-07-06Merge branch 'gc/config-context'Junio C Hamano1-2/+3
2023-07-05treewide: remove unnecessary includes for wrapper.hCalvin Wan1-1/+0
2023-06-29Merge branch 'en/header-split-cache-h-part-3'Junio C Hamano1-2/+3
2023-06-28config: add ctx arg to config_fn_tGlen Choo1-2/+3
2023-06-23Merge branch 'sl/worktree-sparse'Junio C Hamano1-0/+4
2023-06-22Merge branch 'ja/worktree-orphan'Junio C Hamano1-10/+217
2023-06-21repository: remove unnecessary include of path.hElijah Newren1-0/+1
2023-06-21cache.h: remove this no-longer-used headerElijah Newren1-2/+1
2023-06-21read-cache*.h: move declarations for read-cache.c functions from cache.hElijah Newren1-0/+1
2023-06-12worktree: integrate with sparse-indexShuqi Liang1-0/+4
2023-05-26repository: move 'repository_format_worktree_config' to repo scopeVictoria Dye1-1/+1
2023-05-17worktree add: emit warn when there is a bad HEADJacob Abel1-5/+29
2023-05-17worktree add: extend DWIM to infer --orphanJacob Abel1-1/+113
2023-05-17worktree add: introduce "try --orphan" hintJacob Abel1-0/+26
2023-05-17worktree add: add --orphan flagJacob Abel1-11/+56
2023-05-17worktree add: include -B in usage docsJacob Abel1-1/+1
2023-05-09Merge branch 'en/header-split-cache-h-part-2'Junio C Hamano1-0/+2
2023-04-25Merge branch 'en/header-split-cache-h'Junio C Hamano1-0/+2
2023-04-24hash-ll.h: split out of hash.h to remove dependency on repository.hElijah Newren1-0/+1
2023-04-24copy.h: move declarations for copy.c functions from cache.hElijah Newren1-0/+1
2023-04-11object-file.h: move declarations for object-file.c functions from cache.hElijah Newren1-0/+1
2023-04-11object-name.h: move declarations for object-name.c functions from cache.hElijah Newren1-0/+1
2023-04-06Merge branch 'en/header-split-cleanup'Junio C Hamano1-0/+4
2023-04-06Merge branch 'ab/remove-implicit-use-of-the-repository'Junio C Hamano1-4/+4
2023-04-06Merge branch 'ab/config-multi-and-nonbool'Junio C Hamano1-2/+1
2023-04-04Merge branch 'ab/remove-implicit-use-of-the-repository' into en/header-split-...Junio C Hamano1-4/+4
2023-03-28config API: add and use a "git_config_get()" family of functionsÆvar Arnfjörð Bjarmason1-2/+1
2023-03-28cocci: apply the "cache.h" part of "the_repository.pending"Ævar Arnfjörð Bjarmason1-4/+4
2023-03-21environment.h: move declarations for environment.c functions from cache.hElijah Newren1-0/+1
2023-03-21wrapper.h: move declarations for wrapper.c functions from cache.hElijah Newren1-0/+1
2023-03-21abspath.h: move absolute path functions from cache.hElijah Newren1-0/+1
2023-03-21treewide: be explicit about dependence on gettext.hElijah Newren1-0/+1
2023-02-23cache.h: remove dependence on hex.h; make other files include it explicitlyElijah Newren1-0/+1
2023-02-06worktree: fix a trivial leak in prune_worktrees()Ævar Arnfjörð Bjarmason1-3/+3
2023-01-17treewide: always have a valid "index_state.repo" memberÆvar Arnfjörð Bjarmason1-1/+1
2023-01-16cache API: add a "INDEX_STATE_INIT" macro/function, add release_index()Ævar Arnfjörð Bjarmason1-1/+1
2022-11-21built-ins: use free() not UNLEAK() if trivial, rm dead codeÆvar Arnfjörð Bjarmason1-3/+4
2022-10-13doc txt & -h consistency: make "worktree" consistentÆvar Arnfjörð Bjarmason1-5/+6
2022-10-13worktree: define subcommand -h in terms of command -hÆvar Arnfjörð Bjarmason1-25/+84
2022-10-13doc txt & -h consistency: fix mismatching labelsÆvar Arnfjörð Bjarmason1-1/+1
2022-08-19builtin/worktree.c: let parse-options parse subcommandsSZEDER Gábor1-19/+12
2022-06-02run-command API: rename "env_array" to "env"Ævar Arnfjörð Bjarmason1-4/+4
2022-04-04Merge branch 'pw/worktree-list-with-z'Junio C Hamano1-16/+24
2022-04-04Merge branch 'dp/worktree-repair-in-usage'Junio C Hamano1-0/+1
2022-03-31worktree: add -z option for list subcommandPhillip Wood1-16/+24
2022-03-29worktree: include repair cmd in usageDes Preston1-0/+1
2022-03-06Merge branch 'ds/worktree-docs'Junio C Hamano1-63/+75
2022-02-25Merge branch 'ds/sparse-checkout-requires-per-worktree-config'Junio C Hamano1-0/+63
2022-02-23worktree: extract checkout_worktree()Derrick Stolee1-11/+15
2022-02-23worktree: extract copy_sparse_checkout()Derrick Stolee1-15/+18
2022-02-23worktree: extract copy_filtered_worktree_config()Derrick Stolee1-39/+42
2022-02-23worktree: combine two translatable messagesDerrick Stolee1-2/+4
2022-02-09Merge branch 'ab/config-based-hooks-2'Junio C Hamano1-15/+11
2022-02-08worktree: copy sparse-checkout patterns and config on addDerrick Stolee1-0/+63
2022-01-07hooks: convert worktree 'post-checkout' hook to hook libraryEmily Shaffer1-15/+11
2022-01-05i18n: factorize "--foo requires --bar" and the likeJean-Noël Avila1-1/+1
2022-01-05i18n: refactor "%s, %s and %s are mutually exclusive"Jean-Noël Avila1-1/+1
2022-01-05i18n: refactor "foo and bar are mutually exclusive"Jean-Noël Avila1-1/+1
2021-12-15Merge branch 'es/worktree-chatty-to-stderr'Junio C Hamano1-7/+7
2021-12-04worktree: send "chatty" messages to stderrEric Sunshine1-7/+7
2021-11-25run-command API: remove "env" member, always use "env_array"Ævar Arnfjörð Bjarmason1-3/+3
2021-11-25worktree: stop being overly intimate with run_command() internalsEric Sunshine1-4/+3
2021-09-27hook.[ch]: move find_hook() from run-command.c to hook.cÆvar Arnfjörð Bjarmason1-0/+1
2021-07-15worktree: teach `add` to accept --reason <string> with --lockStephen Manz1-5/+16
2021-07-14worktree: mark lock strings with `_()` for translationStephen Manz1-2/+2
2021-05-20Merge branch 'en/dir-traversal'Junio C Hamano1-3/+1
2021-05-13dir: introduce readdir_skip_dot_and_dotdot() helperElijah Newren1-3/+1
2021-04-27hash: provide per-algorithm null OIDsbrian m. carlson1-2/+2
2021-03-14worktree: fix leak in dwim_branch()Andrzej Hunt1-4/+6
2021-01-30worktree: teach `list` verbose modeRafael Silva1-2/+12
2021-01-30worktree: teach `list` to annotate prunable worktreeRafael Silva1-0/+10
2021-01-30worktree: teach `list --porcelain` to annotate locked worktreeRafael Silva1-0/+13
2021-01-30worktree: teach worktree_lock_reason() to gently handle main worktreeRafael Silva1-1/+1
2021-01-30worktree: libify should_prune_worktree()Rafael Silva1-74/+1
2020-12-21worktree: teach `repair` to fix multi-directional breakageEric Sunshine1-1/+1
2020-11-30Merge branch 'mt/worktree-error-message-fix'Junio C Hamano1-2/+2
2020-11-21worktree: fix order of arguments in error messageMatheus Tavares1-2/+2
2020-10-12worktree: teach `list` to annotate locked worktreeRafael Silva1-1/+4
2020-09-18Merge branch 'es/wt-add-detach'Junio C Hamano1-1/+1
2020-09-09Merge branch 'es/worktree-repair'Junio C Hamano1-0/+30
2020-09-09Merge branch 'jk/worktree-check-clean-leakfix'Junio C Hamano1-5/+3
2020-09-06worktree: teach `add` to recognize -d as shorthand for --detachEric Sunshine1-1/+1
2020-08-31worktree: teach "repair" to fix outgoing links to worktreesEric Sunshine1-2/+5
2020-08-31worktree: teach "repair" to fix worktree back-links to main worktreeEric Sunshine1-0/+12
2020-08-27worktree: add skeleton "repair" commandEric Sunshine1-0/+15
2020-08-27worktree: fix leak in check_clean_worktree()Jeff King1-5/+3
2020-07-30strvec: rename struct fieldsJeff King1-3/+3
2020-07-28strvec: fix indentation in renamed callsJeff King1-9/+9
2020-07-28strvec: convert builtin/ callers away from argv_array nameJeff King1-21/+21
2020-07-28strvec: rename files from argv-array to strvecJeff King1-1/+1
2020-07-06Merge branch 'es/get-worktrees-unsort'Junio C Hamano1-6/+26
2020-06-22Merge branch 'es/worktree-duplicate-paths'Junio C Hamano1-35/+93
2020-06-22worktree: drop get_worktrees() unused 'flags' argumentEric Sunshine1-6/+6
2020-06-22worktree: drop get_worktrees() special-purpose sorting optionEric Sunshine1-1/+21
2020-06-10worktree: make "move" refuse to move atop missing registered worktreeEric Sunshine1-2/+1
2020-06-10worktree: generalize candidate worktree path validationEric Sunshine1-13/+16
2020-06-10worktree: prune linked worktree referencing main worktree pathEric Sunshine1-0/+15
2020-06-10worktree: prune duplicate entries referencing same worktree pathEric Sunshine1-6/+43
2020-06-10worktree: make high-level pruning re-usableEric Sunshine1-6/+9
2020-06-10worktree: give "should be pruned?" function more meaningful nameEric Sunshine1-2/+2
2020-06-08worktree: factor out repeated string literalEric Sunshine1-11/+12
2020-03-10real_path: remove unsafe APIAlexandr Miloslavskiy1-3/+6
2020-02-24worktree: don't allow "add" validation to be fooled by suffix matchingEric Sunshine1-8/+1
2019-12-01Merge branch 'pb/no-recursive-reset-hard-in-worktree-add'Junio C Hamano1-1/+1
2019-10-30worktree: teach "add" to ignore submodule.recurse configPhilippe Blain1-1/+1
2019-10-11Merge branch 'rs/dedup-includes'Junio C Hamano1-1/+0
2019-10-11Merge branch 'bc/object-id-part17'Junio C Hamano1-1/+1
2019-10-04treewide: remove duplicate #include directivesRené Scharfe1-1/+0
2019-08-19builtin/worktree: switch null_sha1 to null_oidbrian m. carlson1-1/+1
2019-08-13worktree remove: clarify error message on dirty worktreeSZEDER Gábor1-1/+1
2019-06-13Merge branch 'nd/worktree-name-sanitization'Junio C Hamano1-1/+9
2019-05-15worktree add: sanitize worktree namesNguyễn Thái Ngọc Duy1-1/+9
2019-04-10Merge branch 'ms/worktree-add-atomic-mkdir'Junio C Hamano1-5/+7
2019-03-12worktree: fix worktree add raceMichal Suchanek1-5/+7
2019-02-22trace2:data: add trace2 hook classificationJeff Hostetler1-0/+1
2019-01-07worktree: allow to (re)move worktrees with uninitialized submodulesNguyễn Thái Ngọc Duy1-6/+23
2018-10-31worktree: rename is_worktree_locked to worktree_lock_reasonNickolai Belakovski1-5/+5
2018-08-30worktree: delete .git/worktrees if empty after 'remove'Eric Sunshine1-1/+7
2018-08-30worktree: teach 'remove' to override lock when --force given twiceEric Sunshine1-5/+6
2018-08-30worktree: teach 'move' to override lock when --force given twiceEric Sunshine1-4/+9
2018-08-30worktree: teach 'add' to respect --force for registered but missing pathEric Sunshine1-2/+8
2018-08-30worktree: disallow adding same path multiple timesEric Sunshine1-0/+25
2018-08-30worktree: prepare for more checks of whether path can become worktreeEric Sunshine1-2/+7
2018-08-30worktree: generalize delete_git_dir() to reduce code duplicationEric Sunshine1-16/+9
2018-08-30worktree: move delete_git_dir() earlier in file for upcoming new callersEric Sunshine1-14/+14
2018-08-17worktree: add --quiet optionElia Pinto1-3/+13
2018-06-11checkout: pass the "num_matches" up to callersÆvar Arnfjörð Bjarmason1-2/+2
2018-05-23Merge branch 'tg/worktree-add-existing-branch'Junio C Hamano1-27/+74
2018-05-08Merge branch 'sb/worktree-remove-opt-force'Junio C Hamano1-2/+3
2018-04-30worktree: teach "add" to check out existing branchesThomas Gummerer1-2/+11
2018-04-30worktree: factor out dwim_branch functionThomas Gummerer1-11/+18
2018-04-30worktree: improve message when creating a new worktreeThomas Gummerer1-2/+36
2018-04-30worktree: remove extra members from struct add_optsThomas Gummerer1-17/+16
2018-04-18worktree: accept -f as short for --force for removalStefan Beller1-2/+3
2018-04-10Merge branch 'nd/worktree-prune'Junio C Hamano1-9/+2
2018-04-10Merge branch 'bc/object-id'Junio C Hamano1-2/+2
2018-03-15worktree prune: improve prune logic when worktree is movedNguyễn Thái Ngọc Duy1-1/+2
2018-03-15worktree: delete dead codeNguyễn Thái Ngọc Duy1-8/+0
2018-03-14Merge branch 'nd/parseopt-completion'Junio C Hamano1-1/+3