9b7cbb3 | Junio C Hamano | 17 December 2014, 19:49:34 UTC | Git 2.2.1 Signed-off-by: Junio C Hamano <gitster@pobox.com> | 17 December 2014, 19:49:34 UTC |
77933f4 | Junio C Hamano | 17 December 2014, 19:46:57 UTC | Sync with v2.1.4 * maint-2.1: Git 2.1.4 Git 2.0.5 Git 1.9.5 Git 1.8.5.6 fsck: complain about NTFS ".git" aliases in trees read-cache: optionally disallow NTFS .git variants path: add is_ntfs_dotgit() helper fsck: complain about HFS+ ".git" aliases in trees read-cache: optionally disallow HFS+ .git variants utf8: add is_hfs_dotgit() helper fsck: notice .git case-insensitively t1450: refactor ".", "..", and ".git" fsck tests verify_dotfile(): reject .git case-insensitively read-tree: add tests for confusing paths like ".." and ".git" unpack-trees: propagate errors adding entries to the index | 17 December 2014, 19:46:57 UTC |
8e36a6d | Junio C Hamano | 17 December 2014, 19:44:59 UTC | Git 2.1.4 Signed-off-by: Junio C Hamano <gitster@pobox.com> | 17 December 2014, 19:44:59 UTC |
58f1d95 | Junio C Hamano | 17 December 2014, 19:42:28 UTC | Sync with v2.0.5 * maint-2.0: Git 2.0.5 Git 1.9.5 Git 1.8.5.6 fsck: complain about NTFS ".git" aliases in trees read-cache: optionally disallow NTFS .git variants path: add is_ntfs_dotgit() helper fsck: complain about HFS+ ".git" aliases in trees read-cache: optionally disallow HFS+ .git variants utf8: add is_hfs_dotgit() helper fsck: notice .git case-insensitively t1450: refactor ".", "..", and ".git" fsck tests verify_dotfile(): reject .git case-insensitively read-tree: add tests for confusing paths like ".." and ".git" unpack-trees: propagate errors adding entries to the index | 17 December 2014, 19:42:28 UTC |
9a8c2b6 | Junio C Hamano | 17 December 2014, 19:30:46 UTC | Git 2.0.5 Signed-off-by: Junio C Hamano <gitster@pobox.com> | 17 December 2014, 19:30:46 UTC |
5e519fb | Junio C Hamano | 17 December 2014, 19:28:02 UTC | Sync with v1.9.5 * maint-1.9: Git 1.9.5 Git 1.8.5.6 fsck: complain about NTFS ".git" aliases in trees read-cache: optionally disallow NTFS .git variants path: add is_ntfs_dotgit() helper fsck: complain about HFS+ ".git" aliases in trees read-cache: optionally disallow HFS+ .git variants utf8: add is_hfs_dotgit() helper fsck: notice .git case-insensitively t1450: refactor ".", "..", and ".git" fsck tests verify_dotfile(): reject .git case-insensitively read-tree: add tests for confusing paths like ".." and ".git" unpack-trees: propagate errors adding entries to the index | 17 December 2014, 19:28:54 UTC |
8333263 | Junio C Hamano | 17 December 2014, 19:22:32 UTC | Git 1.9.5 Signed-off-by: Junio C Hamano <gitster@pobox.com> | 17 December 2014, 19:22:32 UTC |
6898b79 | Junio C Hamano | 17 December 2014, 19:20:31 UTC | Sync with v1.8.5.6 * maint-1.8.5: Git 1.8.5.6 fsck: complain about NTFS ".git" aliases in trees read-cache: optionally disallow NTFS .git variants path: add is_ntfs_dotgit() helper fsck: complain about HFS+ ".git" aliases in trees read-cache: optionally disallow HFS+ .git variants utf8: add is_hfs_dotgit() helper fsck: notice .git case-insensitively t1450: refactor ".", "..", and ".git" fsck tests verify_dotfile(): reject .git case-insensitively read-tree: add tests for confusing paths like ".." and ".git" unpack-trees: propagate errors adding entries to the index | 17 December 2014, 19:20:31 UTC |
5c8213a | Junio C Hamano | 17 December 2014, 19:18:45 UTC | Git 1.8.5.6 Signed-off-by: Junio C Hamano <gitster@pobox.com> | 17 December 2014, 19:18:45 UTC |
2aa9100 | Junio C Hamano | 17 December 2014, 19:11:15 UTC | Merge branch 'dotgit-case-maint-1.8.5' into maint-1.8.5 * dotgit-case-maint-1.8.5: fsck: complain about NTFS ".git" aliases in trees read-cache: optionally disallow NTFS .git variants path: add is_ntfs_dotgit() helper fsck: complain about HFS+ ".git" aliases in trees read-cache: optionally disallow HFS+ .git variants utf8: add is_hfs_dotgit() helper fsck: notice .git case-insensitively t1450: refactor ".", "..", and ".git" fsck tests verify_dotfile(): reject .git case-insensitively read-tree: add tests for confusing paths like ".." and ".git" unpack-trees: propagate errors adding entries to the index | 17 December 2014, 19:11:15 UTC |
d08c13b | Johannes Schindelin | 10 December 2014, 21:28:27 UTC | fsck: complain about NTFS ".git" aliases in trees Now that the index can block pathnames that can be mistaken to mean ".git" on NTFS and FAT32, it would be helpful for fsck to notice such problematic paths. This lets servers which use receive.fsckObjects block them before the damage spreads. Note that the fsck check is always on, even for systems without core.protectNTFS set. This is technically more restrictive than we need to be, as a set of users on ext4 could happily use these odd filenames without caring about NTFS. However, on balance, it's helpful for all servers to block these (because the paths can be used for mischief, and servers which bother to fsck would want to stop the spread whether they are on NTFS themselves or not), and hardly anybody will be affected (because the blocked names are variants of .git or git~1, meaning mischief is almost certainly what the tree author had in mind). Ideally these would be controlled by a separate "fsck.protectNTFS" flag. However, it would be much nicer to be able to enable/disable _any_ fsck flag individually, and any scheme we choose should match such a system. Given the likelihood of anybody using such a path in practice, it is not unreasonable to wait until such a system materializes. Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 17 December 2014, 19:04:45 UTC |
2b4c6ef | Johannes Schindelin | 16 December 2014, 22:46:59 UTC | read-cache: optionally disallow NTFS .git variants The point of disallowing ".git" in the index is that we would never want to accidentally overwrite files in the repository directory. But this means we need to respect the filesystem's idea of when two paths are equal. The prior commit added a helper to make such a comparison for NTFS and FAT32; let's use it in verify_path(). We make this check optional for two reasons: 1. It restricts the set of allowable filenames, which is unnecessary for people who are not on NTFS nor FAT32. In practice this probably doesn't matter, though, as the restricted names are rather obscure and almost certainly would never come up in practice. 2. It has a minor performance penalty for every path we insert into the index. This patch ties the check to the core.protectNTFS config option. Though this is expected to be most useful on Windows, we allow it to be set everywhere, as NTFS may be mounted on other platforms. The variable does default to on for Windows, though. Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 17 December 2014, 19:04:45 UTC |
1d1d69b | Johannes Schindelin | 16 December 2014, 22:31:03 UTC | path: add is_ntfs_dotgit() helper We do not allow paths with a ".git" component to be added to the index, as that would mean repository contents could overwrite our repository files. However, asking "is this path the same as .git" is not as simple as strcmp() on some filesystems. On NTFS (and FAT32), there exist so-called "short names" for backwards-compatibility: 8.3 compliant names that refer to the same files as their long names. As ".git" is not an 8.3 compliant name, a short name is generated automatically, typically "git~1". Depending on the Windows version, any combination of trailing spaces and periods are ignored, too, so that both "git~1." and ".git." still refer to the Git directory. The reason is that 8.3 stores file names shorter than 8 characters with trailing spaces. So literally, it does not matter for the short name whether it is padded with spaces or whether it is shorter than 8 characters, it is considered to be the exact same. The period is the separator between file name and file extension, and again, an empty extension consists just of spaces in 8.3 format. So technically, we would need only take care of the equivalent of this regex: (\.git {0,4}|git~1 {0,3})\. {0,3} However, there are indications that at least some Windows versions might be more lenient and accept arbitrary combinations of trailing spaces and periods and strip them out. So we're playing it real safe here. Besides, there can be little doubt about the intention behind using file names matching even the more lenient pattern specified above, therefore we should be fine with disallowing such patterns. Extra care is taken to catch names such as '.\\.git\\booh' because the backslash is marked as a directory separator only on Windows, and we want to use this new helper function also in fsck on other platforms. A big thank you goes to Ed Thomson and an unnamed Microsoft engineer for the detailed analysis performed to come up with the corresponding fixes for libgit2. This commit adds a function to detect whether a given file name can refer to the Git directory by mistake. Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 17 December 2014, 19:04:45 UTC |
a18fcc9 | Jeff King | 15 December 2014, 23:21:57 UTC | fsck: complain about HFS+ ".git" aliases in trees Now that the index can block pathnames that case-fold to ".git" on HFS+, it would be helpful for fsck to notice such problematic paths. This lets servers which use receive.fsckObjects block them before the damage spreads. Note that the fsck check is always on, even for systems without core.protectHFS set. This is technically more restrictive than we need to be, as a set of users on ext4 could happily use these odd filenames without caring about HFS+. However, on balance, it's helpful for all servers to block these (because the paths can be used for mischief, and servers which bother to fsck would want to stop the spread whether they are on HFS+ themselves or not), and hardly anybody will be affected (because the blocked names are variants of .git with invisible Unicode code-points mixed in, meaning mischief is almost certainly what the tree author had in mind). Ideally these would be controlled by a separate "fsck.protectHFS" flag. However, it would be much nicer to be able to enable/disable _any_ fsck flag individually, and any scheme we choose should match such a system. Given the likelihood of anybody using such a path in practice, it is not unreasonable to wait until such a system materializes. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 17 December 2014, 19:04:45 UTC |
a42643a | Jeff King | 15 December 2014, 23:15:20 UTC | read-cache: optionally disallow HFS+ .git variants The point of disallowing ".git" in the index is that we would never want to accidentally overwrite files in the repository directory. But this means we need to respect the filesystem's idea of when two paths are equal. The prior commit added a helper to make such a comparison for HFS+; let's use it in verify_path. We make this check optional for two reasons: 1. It restricts the set of allowable filenames, which is unnecessary for people who are not on HFS+. In practice this probably doesn't matter, though, as the restricted names are rather obscure and almost certainly would never come up in practice. 2. It has a minor performance penalty for every path we insert into the index. This patch ties the check to the core.protectHFS config option. Though this is expected to be most useful on OS X, we allow it to be set everywhere, as HFS+ may be mounted on other platforms. The variable does default to on for OS X, though. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 17 December 2014, 19:04:44 UTC |
6162a1d | Jeff King | 15 December 2014, 22:56:59 UTC | utf8: add is_hfs_dotgit() helper We do not allow paths with a ".git" component to be added to the index, as that would mean repository contents could overwrite our repository files. However, asking "is this path the same as .git" is not as simple as strcmp() on some filesystems. HFS+'s case-folding does more than just fold uppercase into lowercase (which we already handle with strcasecmp). It may also skip past certain "ignored" Unicode code points, so that (for example) ".gi\u200ct" is mapped ot ".git". The full list of folds can be found in the tables at: https://www.opensource.apple.com/source/xnu/xnu-1504.15.3/bsd/hfs/hfscommon/Unicode/UCStringCompareData.h Implementing a full "is this path the same as that path" comparison would require us importing the whole set of tables. However, what we want to do is much simpler: we only care about checking ".git". We know that 'G' is the only thing that folds to 'g', and so on, so we really only need to deal with the set of ignored code points, which is much smaller. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 17 December 2014, 19:04:39 UTC |
76e86fc | Jeff King | 24 November 2014, 18:40:44 UTC | fsck: notice .git case-insensitively We complain about ".git" in a tree because it cannot be loaded into the index or checked out. Since we now also reject ".GIT" case-insensitively, fsck should notice the same, so that errors do not propagate. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 17 December 2014, 19:04:39 UTC |
450870c | Jeff King | 24 November 2014, 18:40:11 UTC | t1450: refactor ".", "..", and ".git" fsck tests We check that fsck notices and complains about confusing paths in trees. However, there are a few shortcomings: 1. We check only for these paths as file entries, not as intermediate paths (so ".git" and not ".git/foo"). 2. We check "." and ".." together, so it is possible that we notice only one and not the other. 3. We repeat a lot of boilerplate. Let's use some loops to be more thorough in our testing, and still end up with shorter code. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 17 December 2014, 19:04:39 UTC |
cc2fc7c | Jeff King | 24 November 2014, 18:39:12 UTC | verify_dotfile(): reject .git case-insensitively We do not allow ".git" to enter into the index as a path component, because checking out the result to the working tree may causes confusion for subsequent git commands. However, on case-insensitive file systems, ".Git" or ".GIT" is the same. We should catch and prevent those, too. Note that technically we could allow this for repos on case-sensitive filesystems. But there's not much point. It's unlikely that anybody cares, and it creates a repository that is unexpectedly non-portable to other systems. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 17 December 2014, 19:04:31 UTC |
96b50cc | Jeff King | 24 November 2014, 18:37:56 UTC | read-tree: add tests for confusing paths like ".." and ".git" We should prevent nonsense paths from entering the index in the first place, as they can cause confusing results if they are ever checked out into the working tree. We already do so, but we never tested it. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 17 December 2014, 19:00:37 UTC |
4616918 | Jeff King | 24 November 2014, 18:36:51 UTC | unpack-trees: propagate errors adding entries to the index When unpack_trees tries to write an entry to the index, add_index_entry may report an error to stderr, but we ignore its return value. This leads to us returning a successful exit code for an operation that partially failed. Let's make sure to propagate this code. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 17 December 2014, 18:57:53 UTC |
8213d87 | Junio C Hamano | 05 December 2014, 19:38:24 UTC | Merge branch 'maint' of git://github.com/git-l10n/git-po into maint * 'maint' of git://github.com/git-l10n/git-po: l10n: de.po: fix typos | 05 December 2014, 19:38:24 UTC |
1b74f64 | Junio C Hamano | 05 December 2014, 19:38:19 UTC | Start post 2.2 cycle Signed-off-by: Junio C Hamano <gitster@pobox.com> | 05 December 2014, 19:38:19 UTC |
ff51f56 | Jiang Xin | 29 November 2014, 02:44:48 UTC | Merge branch 'master' of https://github.com/ralfth/git-po-de * 'master' of https://github.com/ralfth/git-po-de: l10n: de.po: fix typos | 29 November 2014, 02:44:48 UTC |
ae1dcc5 | Hartmut Henkel | 23 November 2014, 15:19:49 UTC | l10n: de.po: fix typos Signed-off-by: Hartmut Henkel <hartmut_henkel@gmx.de> Signed-off-by: Ralf Thielow <ralf.thielow@gmail.com> | 28 November 2014, 18:08:50 UTC |
b260d26 | Junio C Hamano | 26 November 2014, 21:18:34 UTC | Git 2.2 Signed-off-by: Junio C Hamano <gitster@pobox.com> | 26 November 2014, 21:18:34 UTC |
a2b450d | Marc Branchaud | 21 November 2014, 23:10:04 UTC | RelNotes: spelling & grammar tweaks Signed-off-by: Marc Branchaud <marcnarc@xiplink.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 26 November 2014, 21:18:04 UTC |
652e759 | Junio C Hamano | 21 November 2014, 20:10:56 UTC | Git 2.2.0-rc3 Signed-off-by: Junio C Hamano <gitster@pobox.com> | 21 November 2014, 20:10:56 UTC |
7ba2ba7 | Jiang Xin | 20 November 2014, 08:12:34 UTC | l10n: remove a superfluous translation for push.c Ralf reported that '--recurse-submodules' option in push.c should not be translated [1]. Before his commit is merged, remove superfluous translations for push.c. [1] http://www.spinics.net/lists/git/msg241964.html Signed-off-by: Jiang Xin <worldhello.net@gmail.com> | 20 November 2014, 08:23:43 UTC |
e6c1c39 | Ralf Thielow | 20 November 2014, 06:15:15 UTC | l10n: de.po: translate 2 messages Signed-off-by: Ralf Thielow <ralf.thielow@gmail.com> | 20 November 2014, 06:16:18 UTC |
388a439 | Ralf Thielow | 18 November 2014, 18:06:51 UTC | l10n: de.po: translate 2 new messages Signed-off-by: Phillip Sz <phillip.szelat@gmail.com> Signed-off-by: Ralf Thielow <ralf.thielow@gmail.com> | 20 November 2014, 06:16:18 UTC |
9aeb4c2 | Jiang Xin | 20 November 2014, 02:53:48 UTC | l10n: batch updates for one trivial change In order to catch up with the release of Git 2.2.0 final, make a batch l10n update for the new l10n change brought by commit d52adf1 (trailer: display a trailer without its trailing newline). Signed-off-by: Jiang Xin <worldhello.net@gmail.com> | 20 November 2014, 02:53:48 UTC |
e3f9cab | Jiang Xin | 20 November 2014, 02:03:10 UTC | l10n: git.pot: v2.2.0 round 2 (1 updated) Generate po/git.pot from v2.2.0-rc2-23-gca0107e for git v2.2.0 l10n round 2. Signed-off-by: Jiang Xin <worldhello.net@gmail.com> | 20 November 2014, 02:03:10 UTC |
ca0107e | Junio C Hamano | 19 November 2014, 21:48:01 UTC | Merge branch 'sv/submitting-final-patch' * sv/submitting-final-patch: SubmittingPatches: final submission is To: maintainer and CC: list | 19 November 2014, 21:48:01 UTC |
eeb92d7 | Junio C Hamano | 19 November 2014, 21:47:59 UTC | Merge branch 'sn/tutorial-status-output-example' * sn/tutorial-status-output-example: gittutorial: fix output of 'git status' | 19 November 2014, 21:47:59 UTC |
bfd6b53 | Junio C Hamano | 19 November 2014, 21:47:55 UTC | Merge branch 'mh/doc-remote-helper-xref' * mh/doc-remote-helper-xref: doc: add some crossrefs between manual pages | 19 November 2014, 21:47:56 UTC |
f00e081 | Junio C Hamano | 19 November 2014, 21:47:53 UTC | Merge branch 'tb/no-relative-file-url' * tb/no-relative-file-url: t5705: the file:// URL should be absolute | 19 November 2014, 21:47:53 UTC |
d4c4f18 | Junio C Hamano | 19 November 2014, 21:47:49 UTC | Merge branch 'cc/interpret-trailers' Small fixes to a new experimental command already in 'master'. * cc/interpret-trailers: trailer: display a trailer without its trailing newline trailer: ignore comment lines inside the trailers | 19 November 2014, 21:47:52 UTC |
e69b1ce | Junio C Hamano | 18 November 2014, 18:27:46 UTC | Merge git://github.com/git-l10n/git-po * 'master' of git://github.com/git-l10n/git-po: l10n: Update Catalan translation | 18 November 2014, 18:27:46 UTC |
0cfd333 | Junio C Hamano | 18 November 2014, 18:19:38 UTC | Merge branch 'jc/doc-commit-only' * jc/doc-commit-only: Documentation/git-commit: clarify that --only/--include records the working tree contents | 18 November 2014, 18:19:42 UTC |
4d86216 | Junio C Hamano | 18 November 2014, 18:18:28 UTC | Merge branch 'ta/tutorial-modernize' * ta/tutorial-modernize: gittutorial.txt: remove reference to ancient Git version | 18 November 2014, 18:18:28 UTC |
3f78278 | Junio C Hamano | 18 November 2014, 18:16:54 UTC | Merge branch 'da/difftool' Fix-up to a new feature in 'master'. * da/difftool: difftool: honor --trust-exit-code for builtin tools | 18 November 2014, 18:16:55 UTC |
b3e4c47 | Alex Henrie | 18 November 2014, 03:22:48 UTC | l10n: Update Catalan translation Signed-off-by: Alex Henrie <alexhenrie24@gmail.com> | 18 November 2014, 03:22:48 UTC |
ea4f93e | Junio C Hamano | 17 November 2014, 17:28:23 UTC | Merge branch 'master' of git://github.com/git-l10n/git-po * 'master' of git://github.com/git-l10n/git-po: l10n: de.po: translate 62 new messages l10n: de.po: Fixup one translation l10n: de.po: use imperative form for command options | 17 November 2014, 17:28:23 UTC |
d544b2d | Ralf Thielow | 30 October 2014, 08:00:47 UTC | l10n: de.po: translate 62 new messages Translate 62 new messages came from git.pot update in 16742b0 (l10n: git.pot: proposed updates for v2.2.0 (+62)). Signed-off-by: Ralf Thielow <ralf.thielow@gmail.com> | 15 November 2014, 17:22:05 UTC |
744437f | Stefan Beller | 23 September 2014, 12:54:46 UTC | l10n: de.po: Fixup one translation English grammar with German words doesn't make it a German translation. ;) Signed-off-by: Stefan Beller <stefanbeller@gmail.com> Signed-off-by: Ralf Thielow <ralf.thielow@gmail.com> | 15 November 2014, 17:21:58 UTC |
99474b6 | David Aguilar | 14 November 2014, 21:33:55 UTC | difftool: honor --trust-exit-code for builtin tools run_merge_tool() was not setting $status, which prevented the exit code for builtin tools from being forwarded to the caller. Capture the exit status and add a test to guarantee the behavior. Reported-by: Adria Farres <14farresa@gmail.com> Signed-off-by: David Aguilar <davvid@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 14 November 2014, 21:40:38 UTC |
49e0c5a | Junio C Hamano | 14 November 2014, 21:31:15 UTC | Git 2.2.0-rc2 Signed-off-by: Junio C Hamano <gitster@pobox.com> | 14 November 2014, 21:31:15 UTC |
c616d84 | Ralf Thielow | 19 September 2014, 16:38:13 UTC | l10n: de.po: use imperative form for command options Signed-off-by: Ralf Thielow <ralf.thielow@gmail.com> | 14 November 2014, 18:21:52 UTC |
8942821 | Stefan Naewe | 13 November 2014, 10:40:07 UTC | gittutorial: fix output of 'git status' 'git status' doesn't output leading '#'s these days. Signed-off-by: Stefan Naewe <stefan.naewe@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 13 November 2014, 18:53:50 UTC |
f904f66 | Torsten Bögershausen | 13 November 2014, 07:36:07 UTC | t5705: the file:// URL should be absolute The test misused a URL "file://." to mean "relative to here", which we no longer accept. In a file:// URL, typically there is no host, and RFC1738 says that file:///<path> should be used. Update t5705 to use a working URL. Reported-by: Michael Blume <blume.mike@gmail.com> Signed-off-by: Torsten Bögershausen <tboegi@web.de> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 13 November 2014, 18:41:56 UTC |
faa8fac | Slavomir Vlcek | 12 November 2014, 23:18:39 UTC | SubmittingPatches: final submission is To: maintainer and CC: list In an earlier part there is: "re-send it with "To:" set to the maintainer [*1*] and "cc:" the list [*2*]" for the final submission, but later we see "Send it to the list and cc the maintainer." Fix the later one to match the previous. Signed-off-by: Slavomir Vlcek <svlc@inventati.org> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 13 November 2014, 18:39:24 UTC |
f570943 | Junio C Hamano | 12 November 2014, 20:12:50 UTC | Update draft release notes to 2.2 Signed-off-by: Junio C Hamano <gitster@pobox.com> | 12 November 2014, 20:13:39 UTC |
9c70e2c | Junio C Hamano | 12 November 2014, 20:13:25 UTC | Sync with 'maint' | 12 November 2014, 20:13:25 UTC |
7fa1365 | Junio C Hamano | 12 November 2014, 20:13:11 UTC | Merge branch 'nd/gitignore-trailing-whitespace' into maint * nd/gitignore-trailing-whitespace: gitignore.txt: fix spelling of "backslash" | 12 November 2014, 20:13:12 UTC |
bbebdc1 | Junio C Hamano | 12 November 2014, 19:59:58 UTC | Merge branch 'jk/fetch-reflog-df-conflict' Fix-up a test for portability. * jk/fetch-reflog-df-conflict: t1410: fix breakage on case-insensitive filesystems | 12 November 2014, 19:59:58 UTC |
2672671 | Max Horn | 11 November 2014, 20:17:07 UTC | doc: add some crossrefs between manual pages In particular, git-fast-import and -export link to each other, and gitremote-helpers links to existing remote helpers, and vice versa. Also link to fast-import from the remote helper spec, as this is relevant for remote helpers using the fast-import format. Signed-off-by: Max Horn <max@quendi.de> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 11 November 2014, 22:47:04 UTC |
022cf2b | Thomas Ackermann | 11 November 2014, 19:13:36 UTC | gittutorial.txt: remove reference to ancient Git version Signed-off-by: Thomas Ackermann <th.acker@arcor.de> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 11 November 2014, 22:46:08 UTC |
f6f61cb | Junio C Hamano | 11 November 2014, 20:45:48 UTC | Sync with maint * maint: | 11 November 2014, 20:45:48 UTC |
caea1a2 | Junio C Hamano | 11 November 2014, 18:20:13 UTC | Merge branch 'rs/clean-menu-item-defn' into maint * rs/clean-menu-item-defn: clean: use f(void) instead of f() to declare a pointer to a function without arguments | 11 November 2014, 18:20:13 UTC |
6066a7e | René Scharfe | 10 November 2014, 21:17:00 UTC | run-command: use void to declare that functions take no parameters Explicitly declare that git_atexit_dispatch() and git_atexit_clear() take no parameters instead of leaving their parameter list empty and thus unspecified. Signed-off-by: Rene Scharfe <l.s.r@web.de> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 10 November 2014, 22:43:19 UTC |
80b581d | Junio C Hamano | 10 November 2014, 19:59:30 UTC | Merge branch 'master' of git://github.com/git-l10n/git-po * 'master' of git://github.com/git-l10n/git-po: l10n: Updated Bulgarian translation of git (2296t,0f,0u) l10n: zh_CN: translations for git v2.2.0-rc0 l10n: sv.po: Update Swedish translation (2296t0f0u) l10n: fr.po (2296t) update for version 2.2.0 l10n: vi.po: Update new message strings l10n: git.pot: v2.2.0 round 1 (62 new, 23 removed) | 10 November 2014, 19:59:30 UTC |
a4c4708 | Junio C Hamano | 10 November 2014, 19:26:18 UTC | Sync with maint * maint: Documentation/config.txt: fix minor typo config.txt: fix typo | 10 November 2014, 19:26:18 UTC |
bd51886 | Junio C Hamano | 10 November 2014, 19:26:09 UTC | Merge branch 'js/diff-highlight-avoid-sigpipe' * js/diff-highlight-avoid-sigpipe: diff-highlight: exit when a pipe is broken | 10 November 2014, 19:26:09 UTC |
a79c3a1 | Thomas Quinot | 08 November 2014, 10:45:39 UTC | Documentation/config.txt: fix minor typo Add a missing article at the beginning of a sentence, and rephrase slightly. Signed-off-by: Thomas Quinot <thomas@quinot.org> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 10 November 2014, 19:25:26 UTC |
71069cd | Nicolas Dermine | 09 November 2014, 16:19:33 UTC | config.txt: fix typo Signed-off-by: Nicolas Dermine <nicolas.dermine@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 10 November 2014, 18:06:25 UTC |
b226293 | René Scharfe | 09 November 2014, 13:49:58 UTC | trailer: use CHILD_PROCESS_INIT in apply_command() Initialize the struct child_process variable cp at declaration time. This is shorter, saves a function call and prevents using the variable before initialization by mistake. Suggested-by: Jeff King <peff@peff.net> Signed-off-by: Rene Scharfe <l.s.r@web.de> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 10 November 2014, 18:03:39 UTC |
d52adf1 | Christian Couder | 09 November 2014, 09:23:40 UTC | trailer: display a trailer without its trailing newline Trailers passed to the parse_trailer() function often have a trailing newline. When erroring out, we should display the invalid trailer properly, that means without any trailing newline. Helped-by: Junio C Hamano <gitster@pobox.com> Helped-by: Jeff King <peff@peff.net> Signed-off-by: Christian Couder <chriscool@tuxfamily.org> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 10 November 2014, 17:43:59 UTC |
2887103 | Christian Couder | 09 November 2014, 09:23:39 UTC | trailer: ignore comment lines inside the trailers Otherwise trailers that are commented out might be processed. We would also error out if the comment line char is also a separator. This means that comments inside a trailer block will disappear, but that was already the case anyway. Signed-off-by: Christian Couder <chriscool@tuxfamily.org> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 10 November 2014, 17:43:16 UTC |
aae828b | Jeff King | 09 November 2014, 01:59:18 UTC | t1410: fix breakage on case-insensitive filesystems Two tests recently added to t1410 create branches "a" and "a/b" to test d/f conflicts on reflogs. Earlier, unrelated tests in that script create the path "A/B" in the working tree. There's no conflict on a case-sensitive filesystem, but on a case-insensitive one, "git log" will complain that "a/b" is both a revision and a working tree path. We could fix this by using a "--" to disambiguate, but we are probably better off using names that are less confusing to make it more clear that they are unrelated to the working tree files. This patch turns "a/b" into "one/two". Reported-by: Michael Blume <blume.mike@gmail.com> Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 10 November 2014, 17:38:53 UTC |
66edfe9 | Junio C Hamano | 07 November 2014, 20:01:01 UTC | Git 2.2.0-rc1 Signed-off-by: Junio C Hamano <gitster@pobox.com> | 07 November 2014, 20:01:01 UTC |
d956a20 | Junio C Hamano | 07 November 2014, 19:55:40 UTC | Documentation/git-commit: clarify that --only/--include records the working tree contents With the original phrasing, it is possible to misunderstand as if the contents in the index for only the specified paths are made into the new commit. Signed-off-by: Junio C Hamano <gitster@pobox.com> | 07 November 2014, 19:57:57 UTC |
a1ad247 | Junio C Hamano | 06 November 2014, 18:52:51 UTC | Merge branch 'maint' * maint: docs/credential-store: s/--store/--file/ | 06 November 2014, 18:52:51 UTC |
32da67b | Junio C Hamano | 06 November 2014, 18:52:40 UTC | Merge branch 'nd/gitignore-trailing-whitespace' Documentation update. * nd/gitignore-trailing-whitespace: gitignore.txt: fix spelling of "backslash" | 06 November 2014, 18:52:40 UTC |
64b9326 | Junio C Hamano | 06 November 2014, 18:52:36 UTC | Merge branch 'tm/line-log-first-parent' "git log --first-parent -L..." used to crash. * tm/line-log-first-parent: line-log: fix crash when --first-parent is used | 06 November 2014, 18:52:37 UTC |
a1671dd | Junio C Hamano | 06 November 2014, 18:52:31 UTC | Merge branch 'jk/fetch-reflog-df-conflict' Corner-case bugfixes for "git fetch" around reflog handling. * jk/fetch-reflog-df-conflict: ignore stale directories when checking reflog existence fetch: load all default config at startup | 06 November 2014, 18:52:32 UTC |
6b55f8b | Junio C Hamano | 06 November 2014, 18:52:23 UTC | Merge branch 'rs/use-child-process-init-more' * rs/use-child-process-init-more: bundle: split out ref writing from bundle_create bundle: split out a helper function to compute and write prerequisites bundle: split out a helper function to create pack data use child_process_init() to initialize struct child_process variables | 06 November 2014, 18:52:23 UTC |
e44da1b | Junio C Hamano | 06 November 2014, 18:51:35 UTC | Merge branch 'jk/cache-tree-protect-from-broken-libgit2' The code to use cache-tree trusted the on-disk data too much and fell into an infinite loop. * jk/cache-tree-protect-from-broken-libgit2: cache-tree: avoid infinite loop on zero-entry tree | 06 November 2014, 18:51:35 UTC |
e50cd67 | Jeff King | 06 November 2014, 07:40:32 UTC | docs/credential-store: s/--store/--file/ The option name "--store" was used early in development, but never even made it into an applied patch, let alone a released version of git. I forgot to update the matching documentation at the time, though. Noticed-by: Jesse Hopkins <jesse.hopkins@lmco.com> Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 06 November 2014, 17:51:08 UTC |
03af7cd | Ben North | 04 November 2014, 22:18:33 UTC | gitignore.txt: fix spelling of "backslash" Signed-off-by: Ben North <ben@redfrontdoor.org> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 04 November 2014, 22:44:47 UTC |
251e7da | John Szakmeister | 04 November 2014, 20:01:12 UTC | diff-highlight: exit when a pipe is broken While using diff-highlight with other tools, I have discovered that Python ignores SIGPIPE by default. Unfortunately, this also means that tools attempting to launch a pager under Python--and don't realize this is happening--means that the subprocess inherits this setting. In this case, it means diff-highlight will be launched with SIGPIPE being ignored. Let's work with those broken scripts by restoring the default SIGPIPE handler. Signed-off-by: John Szakmeister <john@szakmeister.net> Acked-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 04 November 2014, 21:18:35 UTC |
f745acb | Thomas Ackermann | 03 November 2014, 20:37:07 UTC | Documentation: typofixes In addition to fixing trivial and obvious typos, be careful about the following points: - Spell ASCII, URL and CRC in ALL CAPS; - Spell Linux as Capitalized; - Do not omit periods in "i.e." and "e.g.". Signed-off-by: Thomas Ackermann <th.acker@arcor.de> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 04 November 2014, 21:14:44 UTC |
a8787c5 | Tzvetan Mikov | 04 November 2014, 20:33:37 UTC | line-log: fix crash when --first-parent is used line-log tries to access all parents of a commit, but only the first parent has been loaded if "--first-parent" is specified, resulting in a crash. Limit the number of parents to one if "--first-parent" is specified. Reported-by: Eric N. Vander Weele <ericvw@gmail.com> Signed-off-by: Tzvetan Mikov <tmikov@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 04 November 2014, 20:47:35 UTC |
9233887 | Jeff King | 04 November 2014, 13:24:53 UTC | ignore stale directories when checking reflog existence When we update a ref, we have two rules for whether or not we actually update the reflog: 1. If the reflog already exists, we will always append to it. 2. If log_all_ref_updates is set, we will create a new reflog file if necessary. We do the existence check by trying to open the reflog file, either with or without O_CREAT (depending on log_all_ref_updates). If it fails, then we check errno to see what happened. If we were not using O_CREAT and we got ENOENT, the file doesn't exist, and we return success (there isn't a reflog already, and we were not told to make a new one). If we get EISDIR, then there is likely a stale directory that needs to be removed (e.g., there used to be "foo/bar", it was deleted, and the directory "foo" was left. Now we want to create the ref "foo"). If O_CREAT is set, then we catch this case, try to remove the directory, and retry our open. So far so good. But if we get EISDIR and O_CREAT is not set, then we treat this as any other error, which is not right. Like ENOENT, EISDIR is an indication that we do not have a reflog, and we should silently return success (we were not told to create it). Instead, the current code reports this as an error, and we fail to update the ref at all. Note that this is relatively unlikely to happen, as you would have to have had reflogs turned on, and then later turned them off (it could also happen due to a bug in fetch, but that was fixed in the previous commit). However, it's quite easy to fix: we just need to treat EISDIR like ENOENT for the non-O_CREAT case, and silently return (note that this early return means we can also simplify the O_CREAT case). Our new tests cover both cases (O_CREAT and non-O_CREAT). The first one already worked, of course. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 04 November 2014, 20:18:44 UTC |
72549df | Jeff King | 04 November 2014, 13:11:19 UTC | fetch: load all default config at startup When we start the git-fetch program, we call git_config to load all config, but our callback only processes the fetch.prune option; we do not chain to git_default_config at all. This means that we may not load some core configuration which will have an effect. For instance, we do not load core.logAllRefUpdates, which impacts whether or not we create reflogs in a bare repository. Note that I said "may" above. It gets even more exciting. If we have to transfer actual objects as part of the fetch, then we call fetch_pack as part of the same process. That function loads its own config, which does chain to git_default_config, impacting global variables which are used by the rest of fetch. But if the fetch is a pure ref update (e.g., a new ref which is a copy of an old one), we skip fetch_pack entirely. So we get inconsistent results depending on whether or not we have actual objects to transfer or not! Let's just load the core config at the start of fetch, so we know we have it (we may also load it again as part of fetch_pack, but that's OK; it's designed to be idempotent). Our tests check both cases (with and without a pack). We also check similar behavior for push for good measure, but it already works as expected. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 04 November 2014, 20:13:46 UTC |
dd83521 | Matthieu Moy | 03 November 2014, 15:12:00 UTC | RelNotes/2.2.0.txt: fix minor typos Signed-off-by: Matthieu Moy <Matthieu.Moy@imag.fr> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 03 November 2014, 19:29:10 UTC |
6c31a5e | Alexander Shopov | 17 October 2014, 19:39:45 UTC | l10n: Updated Bulgarian translation of git (2296t,0f,0u) Signed-off-by: Alexander Shopov <ash@kambanaria.org> | 02 November 2014, 17:11:08 UTC |
220c313 | Jiang Xin | 08 October 2014, 02:55:14 UTC | l10n: zh_CN: translations for git v2.2.0-rc0 Translate 62 new messages (2296t0f0u) for git v2.2.0-rc0. Also changed the translation of bare (repository). Signed-off-by: Jiang Xin <worldhello.net@gmail.com> | 02 November 2014, 02:59:00 UTC |
94dd79e | Jiang Xin | 02 November 2014, 02:12:29 UTC | Merge branch 'fr_2.2.0' of git://github.com/jnavila/git * 'fr_2.2.0' of git://github.com/jnavila/git: l10n: fr.po (2296t) update for version 2.2.0 | 02 November 2014, 02:12:29 UTC |
ac4a73d | Jiang Xin | 02 November 2014, 02:11:27 UTC | Merge branch 'master' of git://github.com/nafmo/git-l10n-sv * 'master' of git://github.com/nafmo/git-l10n-sv: l10n: sv.po: Update Swedish translation (2296t0f0u) | 02 November 2014, 02:11:27 UTC |
5331bfd | Peter Krefting | 01 November 2014, 19:17:37 UTC | l10n: sv.po: Update Swedish translation (2296t0f0u) Signed-off-by: Peter Krefting <peter@softwolves.pp.se> | 01 November 2014, 19:17:37 UTC |
f507e5d | Jean-Noel Avila | 01 November 2014, 15:29:19 UTC | l10n: fr.po (2296t) update for version 2.2.0 Signed-off-by: Jean-Noel Avila <jn.avila@free.fr> Signed-off-by: Grégoire Paris <gparis@universcine.com> | 01 November 2014, 15:51:49 UTC |
4dcd03e | Tran Ngoc Quan | 01 November 2014, 02:07:24 UTC | l10n: vi.po: Update new message strings Signed-off-by: Tran Ngoc Quan <vnwildman@gmail.com> | 01 November 2014, 02:07:24 UTC |
d07a63e | Jiang Xin | 31 October 2014, 23:47:46 UTC | l10n: git.pot: v2.2.0 round 1 (62 new, 23 removed) Generate po/git.pot from v2.2.0-rc0 for git v2.2.0 l10n round 1. Signed-off-by: Jiang Xin <worldhello.net@gmail.com> | 31 October 2014, 23:47:46 UTC |
4ace7ff | Junio C Hamano | 31 October 2014, 18:57:23 UTC | Git 2.2.0-rc0 Signed-off-by: Junio C Hamano <gitster@pobox.com> | 31 October 2014, 18:57:23 UTC |
ef59f32 | Junio C Hamano | 31 October 2014, 18:50:20 UTC | Merge branch 'for-junio' of git://bogomips.org/git-svn * 'for-junio' of git://bogomips.org/git-svn: git-svn: use SVN::Ra::get_dir2 when possible git-svn: add space after "W:" prefix in warning git-svn: (cleanup) remove editor param passing git-svn: prepare SVN::Ra config pieces once Git.pm: add specified name to tempfile template git-svn: disable _rev_list memoization git-svn: save a little memory as fetch progresses git-svn: remove unnecessary DESTROY override git-svn: reload RA every log-window-size git-svn.txt: advertise pushurl with dcommit git-svn: remove mergeinfo rev caching git-svn: cache only mergeinfo revisions git-svn: reduce check_cherry_pick cache overhead git-svn: only look at the root path for svn:mergeinfo git-svn: only look at the new parts of svn:mergeinfo | 31 October 2014, 18:50:20 UTC |
1d42cf3 | Junio C Hamano | 31 October 2014, 18:49:53 UTC | Merge branch 'jc/push-cert' * jc/push-cert: receive-pack: avoid minor leak in case start_async() fails | 31 October 2014, 18:49:55 UTC |
598d7eb | Junio C Hamano | 31 October 2014, 18:49:48 UTC | Merge branch 'rs/child-process-init' * rs/child-process-init: api-run-command: add missing list item marker | 31 October 2014, 18:49:49 UTC |
bf1f639 | Junio C Hamano | 31 October 2014, 18:49:37 UTC | Merge branch 'rs/grep-color-words' Allow painting or not painting (partial) matches in context lines when showing "grep -C<num>" output in color. * rs/grep-color-words: grep: add color.grep.matchcontext and color.grep.matchselected | 31 October 2014, 18:49:47 UTC |
7ffa35b | Eric Wong | 31 October 2014, 10:34:03 UTC | git-svn: use SVN::Ra::get_dir2 when possible This avoids the following failure with normal "get_dir" on newer versions of SVN (tested with SVN 1.8.8-1ubuntu3.1): Incorrect parameters given: Could not convert '%ld' into a number get_dir2 also has the potential to be more efficient by requesting less data. ref: <1414636504.45506.YahooMailBasic@web172304.mail.ir2.yahoo.com> ref: <1414722617.89476.YahooMailBasic@web172305.mail.ir2.yahoo.com> Signed-off-by: Eric Wong <normalperson@yhbt.net> Cc: Hin-Tak Leung <htl10@users.sourceforge.net> | 31 October 2014, 10:34:54 UTC |