summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* l10n: fr v2.5.0 round 2 (2359t)Jean-Noel Avila2015-07-141-199/+252
| | | | Signed-off-by: Jean-Noel Avila <jn.avila@free.fr>
* l10n: git.pot: v2.5.0 round 2 (9 new, 5 removed)Jiang Xin2015-07-141-182/+199
| | | | | | Generate po/git.pot from v2.5.0-rc2 for git v2.5.0 l10n round 2. Signed-off-by: Jiang Xin <worldhello.net@gmail.com>
* Merge tag 'l10n-2.5.0-rnd1' of git://github.com/git-l10n/git-poJunio C Hamano2015-07-138-9106/+11110
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | l10n-2.5.0-rnd1 * tag 'l10n-2.5.0-rnd1' of git://github.com/git-l10n/git-po: l10n: de.po: translate 65 new messages l10n: de.po: translate "index" as "Index" l10n: de.po: fix translation of "head nodes" l10n: zh_CN: for git v2.5.0 l10n round 1 l10n: ca.po: update translation l10n: fr.po v2.5.0-rc0 (2355t) l10n: Updated Bulgarian translation of git (2355t,0f,0u) l10n: sv.po: Update Swedish translation (2355t0f0u) l10n: Updated Vietnamese translation (2355t) l10n: git.pot: v2.5.0 round 1 (65 new, 15 removed)
| * l10n: de.po: translate 65 new messagesRalf Thielow2015-07-081-1132/+1391
| | | | | | | | | | | | | | Translate 65 new messages came from git.pot update in 64f23b0 (l10n: git.pot: v2.5.0 round 1 (65 new, 15 removed)). Signed-off-by: Ralf Thielow <ralf.thielow@gmail.com>
| * l10n: de.po: translate "index" as "Index"Ralf Thielow2015-07-081-69/+65
| | | | | | | | | | | | | | | | | | | | | | | | | | | | The term "index" is translated as "Staging-Area" to match a majority of German books and to not confuse Git beginners who don't know about Git's index. "Staging Area" is used in German books as a thing where content can be staged for commit. While the translation is good for those kind of messages, it's bad for messages that mean the Git index as the tree state or the index file, in which case we should translate as "Index". Signed-off-by: Ralf Thielow <ralf.thielow@gmail.com>
| * l10n: de.po: fix translation of "head nodes"Ralf Thielow2015-07-081-2/+2
| | | | | | | | | | Signed-off-by: Ralf Thielow <ralf.thielow@gmail.com> Acked-by: Phillip Sz <phillip.szelat@gmail.com>
| * l10n: zh_CN: for git v2.5.0 l10n round 1Jiang Xin2015-07-051-1122/+1381
| | | | | | | | | | | | Update 65 translations (2355t0f0u) for git v2.5.0-rc0. Signed-off-by: Jiang Xin <worldhello.net@gmail.com>
| * l10n: ca.po: update translationAlex Henrie2015-07-011-1127/+1382
| | | | | | | | Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
| * Merge branch 'fr_2.5.0_round1' of git://github.com/jnavila/gitJiang Xin2015-07-021-1131/+1379
| |\ | | | | | | | | | | | | * 'fr_2.5.0_round1' of git://github.com/jnavila/git: l10n: fr.po v2.5.0-rc0 (2355t)
| | * l10n: fr.po v2.5.0-rc0 (2355t)Jean-Noel Avila2015-06-301-1131/+1379
| | | | | | | | | | | | | | | Signed-off-by: Jean-Noel Avila <jn.avila@free.fr> Signed-off-by: Claude Dioudonnat <cdioudonnat@itnetwork.fr>
| * | Merge branch 'master' of git://github.com/alshopov/git-poJiang Xin2015-06-291-1158/+1401
| |\ \ | | | | | | | | | | | | | | | | * 'master' of git://github.com/alshopov/git-po: l10n: Updated Bulgarian translation of git (2355t,0f,0u)
| | * | l10n: Updated Bulgarian translation of git (2355t,0f,0u)Alexander Shopov2015-06-281-1158/+1401
| | | | | | | | | | | | | | | | Signed-off-by: Alexander Shopov <ash@kambanaria.org>
| * | | l10n: sv.po: Update Swedish translation (2355t0f0u)Peter Krefting2015-06-281-1129/+1387
| |/ / | | | | | | | | | Signed-off-by: Peter Krefting <peter@softwolves.pp.se>
| * | l10n: Updated Vietnamese translation (2355t)Tran Ngoc Quan2015-06-281-1132/+1382
| |/ | | | | | | Signed-off-by: Tran Ngoc Quan <vnwildman@gmail.com>
| * l10n: git.pot: v2.5.0 round 1 (65 new, 15 removed)Jiang Xin2015-06-271-1108/+1344
| | | | | | | | | | | | Generate po/git.pot from v2.5.0-rc0 for git v2.5.0 l10n round 1. Signed-off-by: Jiang Xin <worldhello.net@gmail.com>
* | Git 2.5.0-rc2v2.5.0-rc2Junio C Hamano2015-07-132-3/+45
| | | | | | | | Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | Merge branch 'es/worktree-add'Junio C Hamano2015-07-138-260/+386
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Update to the "linked checkout" in 2.5.0-rc1. Instead of "checkout --to" that does not do what "checkout" normally does, move the functionality to "git worktree add". * es/worktree-add: (24 commits) Revert "checkout: retire --ignore-other-worktrees in favor of --force" checkout: retire --ignore-other-worktrees in favor of --force worktree: add: auto-vivify new branch when <branch> is omitted worktree: add: make -b/-B default to HEAD when <branch> is omitted worktree: extract basename computation to new function checkout: require worktree unconditionally checkout: retire --to option tests: worktree: retrofit "checkout --to" tests for "worktree add" worktree: add -b/-B options worktree: add --detach option worktree: add --force option worktree: introduce "add" command checkout: drop 'checkout_opts' dependency from prepare_linked_checkout checkout: make --to unconditionally verbose checkout: prepare_linked_checkout: drop now-unused 'new' argument checkout: relocate --to's "no branch specified" check checkout: fix bug with --to and relative HEAD Documentation/git-worktree: add EXAMPLES section Documentation/git-worktree: add high-level 'lock' overview Documentation/git-worktree: split technical info from general description ...
| * | Revert "checkout: retire --ignore-other-worktrees in favor of --force"Junio C Hamano2015-07-123-7/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 0d1a1517835a10818f2d40d8780a268dbb5e20ce. When trying to switch to a different branch, that happens to be checked out in another working tree, the user shouldn't have to give up the other safety measures (like protecting the local changes that overlap the difference between the branches) while defeating the "no two checkouts of the same branch" safety. Signed-off-by: Junio C Hamano <gitster@pobox.com>
| * | checkout: retire --ignore-other-worktrees in favor of --forceEric Sunshine2015-07-073-12/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | As a safeguard, checking out a branch already checked out by a different worktree is disallowed. This behavior can be overridden with --ignore-other-worktrees, however, this option is neither obvious nor particularly discoverable. As a common safeguard override, --force is more likely to come to mind. Therefore, overload it to also suppress the check for a branch already checked out elsewhere. Signed-off-by: Eric Sunshine <sunshine@sunshineco.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
| * | worktree: add: auto-vivify new branch when <branch> is omittedEric Sunshine2015-07-073-4/+26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | As a convenience, when <branch> is omitted from "git worktree <path> <branch>" and neither -b nor -B is used, automatically create a new branch named after <path>, as if "-b $(basename <path>)" was specified. Thus, "git worktree add ../hotfix" creates a new branch named "hotfix" and associates it with new worktree "../hotfix". Signed-off-by: Eric Sunshine <sunshine@sunshineco.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
| * | worktree: add: make -b/-B default to HEAD when <branch> is omittedEric Sunshine2015-07-063-2/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | As a convenience, like "git branch" and "git checkout -b", make "git worktree add -b <newbranch> <path> <branch>" default to HEAD when <branch> is omitted. Signed-off-by: Eric Sunshine <sunshine@sunshineco.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
| * | worktree: extract basename computation to new functionEric Sunshine2015-07-061-9/+20
| | | | | | | | | | | | | | | | | | | | | | | | A subsequent patch will also need to compute the basename of the new worktree, so factor out this logic into a new function. Signed-off-by: Eric Sunshine <sunshine@sunshineco.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
| * | checkout: require worktree unconditionallyEric Sunshine2015-07-062-3/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In order to allow linked worktree creation via "git checkout --to" from a bare repository, 3473ad0 (checkout: don't require a work tree when checking out into a new one, 2014-11-30) dropped git-checkout's unconditional NEED_WORK_TREE requirement and instead performed worktree setup conditionally based upon presence or absence of the --to option. Now that --to has been retired and git-checkout is no longer responsible for linked worktree creation, the NEED_WORK_TREE requirement can be re-instated. This effectively reverts 3473ad0, except for the tests it added which now check bare repository behavior of "git worktree add" instead. Signed-off-by: Eric Sunshine <sunshine@sunshineco.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
| * | checkout: retire --to optionEric Sunshine2015-07-063-173/+139
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Now that "git worktree add" has achieved user-facing feature-parity with "git checkout --to", retire the latter. Move the actual linked worktree creation functionality, prepare_linked_checkout() and its helpers, verbatim from checkout.c to worktree.c. This effectively reverts changes to checkout.c by 529fef2 (checkout: support checking out into a new working directory, 2014-11-30) with the exception of merge_working_tree() and switch_branches() which still require specialized knowledge that a the checkout is occurring in a newly-created linked worktree (signaled to them by the private GIT_CHECKOUT_NEW_WORKTREE environment variable). Signed-off-by: Eric Sunshine <sunshine@sunshineco.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
| * | tests: worktree: retrofit "checkout --to" tests for "worktree add"Eric Sunshine2015-07-063-29/+25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | With the introduction of "git worktree add", "git checkout --to" is slated for removal. Therefore, retrofit linked worktree creation tests to use "git worktree add" instead. (The test to check exclusivity of "checkout --to" and "checkout <paths>" is dropped altogether since it becomes meaningless with retirement of "checkout --to".) Signed-off-by: Eric Sunshine <sunshine@sunshineco.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
| * | worktree: add -b/-B optionsEric Sunshine2015-07-062-3/+21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | One of git-worktree's roles is to populate the new worktree, much like git-checkout, and thus, for convenience, ought to support several of the same shortcuts. Toward this goal, add -b/-B options to create a new branch and check it out in the new worktree. (For brevity, only -b is mentioned in the synopsis; -B is omitted.) Signed-off-by: Eric Sunshine <sunshine@sunshineco.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
| * | worktree: add --detach optionEric Sunshine2015-07-062-2/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | One of git-worktree's roles is to populate the new worktree, much like git-checkout, and thus, for convenience, ought to support several of the same shortcuts. Toward this goal, add a --detach option to detach HEAD in the new worktree. Signed-off-by: Eric Sunshine <sunshine@sunshineco.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
| * | worktree: add --force optionEric Sunshine2015-07-062-2/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | By default, "git worktree add" refuses to create a new worktree when the requested branch is already checked out elsewhere. Add a --force option to override this safeguard. Signed-off-by: Eric Sunshine <sunshine@sunshineco.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
| * | worktree: introduce "add" commandEric Sunshine2015-07-062-10/+41
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The plan is to relocate "git checkout --to" functionality to "git worktree add". As a first step, introduce a bare-bones git-worktree "add" command along with documentation. At this stage, "git worktree add" merely invokes "git checkout --to" behind the scenes, but an upcoming patch will move the actual functionality (checkout.c:prepare_linked_checkout() and its helpers) to worktree.c. Signed-off-by: Eric Sunshine <sunshine@sunshineco.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
| * | checkout: drop 'checkout_opts' dependency from prepare_linked_checkoutEric Sunshine2015-07-061-4/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The plan is to relocate "git checkout --to" functionality to "git worktree add", however, worktree.c won't have access to the 'struct checkout_opts' passed to prepare_linked_worktree(), which it consults for the pathname of the new worktree and the argv[] of the command it should run to populate the new worktree. Facilitate relocation of prepare_linked_worktree() by instead having it accept the pathname and argv[] directly, thus eliminating the final references to 'struct checkout_opts'. Signed-off-by: Eric Sunshine <sunshine@sunshineco.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
| * | checkout: make --to unconditionally verboseEric Sunshine2015-07-061-2/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | prepare_linked_checkout() respects git-checkout's --quiet flag, however, the plan is to relocate "git checkout --to" functionality to "git worktree add", and git-worktree does not (yet) have a --quiet flag. Consequently, make prepare_linked_checkout() unconditionally verbose to ease eventual code movement to worktree.c. (A --quiet flag can be added to git-worktree later if there is demand for it.) Signed-off-by: Eric Sunshine <sunshine@sunshineco.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
| * | checkout: prepare_linked_checkout: drop now-unused 'new' argumentEric Sunshine2015-07-061-3/+2
| | | | | | | | | | | | | | | | | | | | | The only references to 'new' were folded out by the last two patches. Signed-off-by: Eric Sunshine <sunshine@sunshineco.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
| * | checkout: relocate --to's "no branch specified" checkEric Sunshine2015-07-061-3/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The plan is to relocate "git checkout --to" functionality to "git worktree add", however, this check expects a 'struct branch_info' which git-worktree won't have at hand. It will, however, have access to its own command-line from which it can pick up the branch name. Therefore, as a preparatory step, rather than having prepare_linked_checkout() perform this check, make it the caller's responsibility. Signed-off-by: Eric Sunshine <sunshine@sunshineco.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
| * | checkout: fix bug with --to and relative HEADEric Sunshine2015-07-062-4/+22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Given "git checkout --to <path> HEAD~1", the new worktree's HEAD should begin life at the current branch's HEAD~1, however, it actually ends up at HEAD~2. This happens because: 1. git-checkout resolves HEAD~1 2. to satisfy is_git_directory(), prepare_linked_worktree() creates a HEAD for the new worktree with the value of the resolved HEAD~1 3. git-checkout re-invokes itself with the same arguments within the new worktree to populate the worktree 4. the sub git-checkout resolves HEAD~1 relative to its own HEAD, which is the resolved HEAD~1 from the original invocation, resulting unexpectedly and incorrectly in HEAD~2 (relative to the original) Fix this by unconditionally assigning the current worktree's HEAD as the value of the new worktree's HEAD. As a side-effect, this change also eliminates a dependence within prepare_linked_checkout() upon 'struct branch_info'. The plan is to eventually relocate "git checkout --to" functionality to "git worktree add", and worktree.c won't have knowledge of 'struct branch_info', so removal of this dependency is a step toward that goal. Signed-off-by: Eric Sunshine <sunshine@sunshineco.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
| * | Documentation/git-worktree: add EXAMPLES sectionEric Sunshine2015-07-061-0/+22
| | | | | | | | | | | | | | | Signed-off-by: Eric Sunshine <sunshine@sunshineco.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
| * | Documentation/git-worktree: add high-level 'lock' overviewEric Sunshine2015-07-061-9/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Due to the (current) absence of a "git worktree lock" command, locking a worktree's administrative files to prevent automatic pruning is a manual task, necessarily requiring low-level understanding of linked worktree functionality. However, this level of detail does not belong in the high-level DESCRIPTION section, so add a generalized discussion of locking to DESCRIPTION and move the technical information to DETAILS. Signed-off-by: Eric Sunshine <sunshine@sunshineco.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
| * | Documentation/git-worktree: split technical info from general descriptionEric Sunshine2015-07-061-34/+36
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The DESCRIPTION section should provide a high-level overview of linked worktree functionality to bring users up to speed quickly, without overloading them with low-level details, so relocate the technical information to a new DETAILS section. Signed-off-by: Eric Sunshine <sunshine@sunshineco.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
| * | Documentation/git-worktree: add BUGS sectionEric Sunshine2015-07-061-3/+16
| | | | | | | | | | | | | | | | | | | | | Relocate submodule warning to BUGS and enumerate missing commands. Signed-off-by: Eric Sunshine <sunshine@sunshineco.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
| * | Documentation: move linked worktree description from checkout to worktreeEric Sunshine2015-07-062-67/+64
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Now that the git-worktree command exists, its documentation page is the natural place for the linked worktree description to reside. Relocate the "MULTIPLE WORKING TREES" description verbatim from git-checkout.txt to git-worktree.txt. Signed-off-by: Eric Sunshine <sunshine@sunshineco.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
| * | Documentation/git-worktree: associate options with commandsEric Sunshine2015-07-061-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | git-worktree options affect some worktree commands but not others, but this is not necessarily obvious from the option descriptions. Make this clear by indicating explicitly which commands are affected by which options. Signed-off-by: Eric Sunshine <sunshine@sunshineco.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
| * | Documentation/git-checkout: fix incorrect worktree prune commandEric Sunshine2015-07-061-1/+1
| | | | | | | | | | | | | | | | | | | | | This was missed when "git prune --worktrees" became "git worktree prune". Signed-off-by: Eric Sunshine <sunshine@sunshineco.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | | Merge branch 'nd/multiple-work-trees'Junio C Hamano2015-07-1313-126/+217
|\ \ \ | |/ / | | | | | | | | | | | | | | | | | | | | | | | | "git checkout [<tree-ish>] <paths>" spent unnecessary cycles checking if the current branch was checked out elsewhere, when we know we are not switching the branches ourselves. * nd/multiple-work-trees: worktree: new place for "git prune --worktrees" checkout: don't check worktrees when not necessary
| * | worktree: new place for "git prune --worktrees"nd/multiple-work-treesNguyễn Thái Ngọc Duy2015-06-2911-114/+198
| | | | | | | | | | | | | | | | | | | | | | | | | | | Commit 23af91d (prune: strategies for linked checkouts - 2014-11-30) adds "--worktrees" to "git prune" without realizing that "git prune" is for object database only. This patch moves the same functionality to a new command "git worktree". Signed-off-by: Nguyễn Thái Ngọc Duy <pclouds@gmail.com>
| * | checkout: don't check worktrees when not necessaryNguyễn Thái Ngọc Duy2015-06-122-12/+19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When --patch or pathspecs are passed to git checkout, the working tree will not be switching branch, so there's no need to check if the branch that we are running checkout on is already checked out. Original-patch-by: Spencer Baugh <sbaugh@catern.com> Signed-off-by: Nguyễn Thái Ngọc Duy <pclouds@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | | Merge branch 'ss/clone-guess-dir-name-simplify'Junio C Hamano2015-07-131-13/+6
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | Code simplification. * ss/clone-guess-dir-name-simplify: clone: simplify string handling in guess_dir_name()
| * | | clone: simplify string handling in guess_dir_name()ss/clone-guess-dir-name-simplifySebastian Schuberth2015-07-091-13/+6
| | | | | | | | | | | | | | | | | | | | Signed-off-by: Sebastian Schuberth <sschuberth@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | | | Merge branch 'kb/config-unmap-before-renaming'Junio C Hamano2015-07-131-0/+3
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | "git config" failed to update the configuration file when the underlying filesystem is incapable of renaming a file that is still open. * kb/config-unmap-before-renaming: config.c: fix writing config files on Windows network shares
| * | | | config.c: fix writing config files on Windows network shareskb/config-unmap-before-renamingKarsten Blees2015-06-301-0/+3
| |/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Renaming to an existing file doesn't work on Windows network shares if the target file is open. munmap() the old config file before commit_lock_file. Signed-off-by: Karsten Blees <blees@dcon.de> Acked-by: Jeff King <peff@peff.net> Acked-by: Johannes Schindelin <johannes.schindelin@gmx.de> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | | | Merge branch 'mh/strbuf-read-file-returns-ssize-t'Junio C Hamano2015-07-132-3/+4
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Avoid possible ssize_t to int truncation. * mh/strbuf-read-file-returns-ssize-t: strbuf: strbuf_read_file() should return ssize_t
| * | | | strbuf: strbuf_read_file() should return ssize_tmh/strbuf-read-file-returns-ssize-tMichael Haggerty2015-07-032-3/+4
| |/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | It is currently declared to return int, which could overflow for large files. Signed-off-by: Michael Haggerty <mhagger@alum.mit.edu> Signed-off-by: Junio C Hamano <gitster@pobox.com>