- 23 2月, 2016 13 次提交
-
-
由 Patrick Steinhardt 提交于
The desired default behavior for `git_config_set` is to die whenever an error occurs. Dying is the default for a lot of internal functions when failures occur and is in this case the right thing to do for most callers as otherwise we might run into inconsistent repositories without noticing. As some code may rely on the actual return values for `git_config_set` we still require the ability to invoke these functions without aborting. Rename the existing `git_config_set` functions to `git_config_set_gently` to keep them available for those callers. Signed-off-by: NPatrick Steinhardt <ps@pks.im> Signed-off-by: NJunio C Hamano <gitster@pobox.com>
-
由 Patrick Steinhardt 提交于
When calling `git_config_set` to set 'core.precomposeunicode' we ignore the return value of the function, which may indicate that we were unable to write the value back to disk. As the function is only called by init-db we can and should die when an error occurs. Signed-off-by: NPatrick Steinhardt <ps@pks.im> Signed-off-by: NJunio C Hamano <gitster@pobox.com>
-
由 Patrick Steinhardt 提交于
When we start picking a range of revisions we save the replay options that are required to restore state when interrupting and later continuing picking the revisions. However, we do not check the return values of the `git_config_set` functions, which may lead us to store incomplete information. As this may lead us to fail when trying to continue the sequence the error can be fatal. Fix this by dying immediately when we are unable to write back any replay option. Signed-off-by: NPatrick Steinhardt <ps@pks.im> Signed-off-by: NJunio C Hamano <gitster@pobox.com>
-
由 Patrick Steinhardt 提交于
When creating an empty repository with `git init-db` we do not check for error codes returned by `git_config_set` functions. This may cause the user to end up with an inconsistent repository without any indication for the user. Fix this problem by dying early with an error message when we are unable to write the configuration files to disk. Signed-off-by: NPatrick Steinhardt <ps@pks.im> Signed-off-by: NJunio C Hamano <gitster@pobox.com>
-
由 Patrick Steinhardt 提交于
The clone command does not check for error codes returned by `git_config_set` functions. This may cause the user to end up with an inconsistent repository without any indication with what went wrong. Fix this problem by dying with an error message when we are unable to write the configuration files to disk. Signed-off-by: NPatrick Steinhardt <ps@pks.im> Signed-off-by: NJunio C Hamano <gitster@pobox.com>
-
由 Patrick Steinhardt 提交于
When manipulating remotes we try to set various configuration values without checking if the values were persisted correctly, possibly leaving the remote in an inconsistent state. Fix this issue by dying early and notifying the user about the error. Signed-off-by: NPatrick Steinhardt <ps@pks.im> Signed-off-by: NJunio C Hamano <gitster@pobox.com>
-
由 Patrick Steinhardt 提交于
When we add or set new branches (e.g. by `git remote add -f` or `git remote set-branches`) we do not check for error codes when writing the branches to the configuration file. When persisting the configuration failed we are left with a remote that has none or not all of the branches that should have been set without notifying the user. Fix this issue by dying early on configuration error. Signed-off-by: NPatrick Steinhardt <ps@pks.im> Signed-off-by: NJunio C Hamano <gitster@pobox.com>
-
由 Patrick Steinhardt 提交于
When invoking `git-remote --set-url` we do not check the return value when writing the actual new URL to the configuration file, pretending to the user that the configuration has been set while it was in fact not persisted. Fix this problem by dying early when setting the config fails. Signed-off-by: NPatrick Steinhardt <ps@pks.im> Signed-off-by: NJunio C Hamano <gitster@pobox.com>
-
由 Patrick Steinhardt 提交于
When setting the 'core.worktree' option for a newly cloned submodule we ignore the return value of `git_config_set_in_file`. As this leaves the submodule in an inconsistent state, we instead want to inform the user that something has gone wrong by printing an error and aborting the program. Signed-off-by: NPatrick Steinhardt <ps@pks.im> Signed-off-by: NJunio C Hamano <gitster@pobox.com>
-
由 Patrick Steinhardt 提交于
When trying to connect a submodule with its corresponding repository in '.git/modules' we try to set the core.worktree setting in the submodule, which may fail due to an error encountered in `git_config_set_in_file`. The function is used in the git-mv command when trying to move a submodule to another location. We already die when renaming a file fails but do not pay attention to the case where updating the connection between submodule and its repository fails. As this leaves the repository in an inconsistent state, as well, abort the program by dying early and presenting the failure to the user. Signed-off-by: NPatrick Steinhardt <ps@pks.im> Signed-off-by: NJunio C Hamano <gitster@pobox.com>
-
由 Patrick Steinhardt 提交于
Signed-off-by: NPatrick Steinhardt <ps@pks.im> Signed-off-by: NJunio C Hamano <gitster@pobox.com>
-
由 Patrick Steinhardt 提交于
When we try to unset upstream configurations we do not check return codes for the `git_config_set` functions. As those may indicate that we were unable to unset the respective configuration we may exit successfully without any error message while in fact the upstream configuration was not unset. Fix this by dying with an error message when we cannot unset the configuration. Signed-off-by: NPatrick Steinhardt <ps@pks.im> Signed-off-by: NJunio C Hamano <gitster@pobox.com>
-
由 Patrick Steinhardt 提交于
When setting up a new tracking branch fails due to issues with the configuration file we do not report any errors to the user and pretend setting the tracking branch succeeded. Setting up the tracking branch is handled by the `install_branch_config` function. We do not want to simply die there as the function is not only invoked when explicitly setting upstream information with `git branch --set-upstream-to=`, but also by `git push --set-upstream` and `git clone`. While it is reasonable to die in the explict first case, we would lose information in the latter two cases, so we only print the error message but continue the program as usual. Signed-off-by: NPatrick Steinhardt <ps@pks.im> Signed-off-by: NJunio C Hamano <gitster@pobox.com>
-
- 17 2月, 2016 1 次提交
-
-
由 Patrick Steinhardt 提交于
A lot of call-sites for the existing family of `git_config_set` functions do not check for errors that may occur, e.g. when the configuration file is locked. In many cases we simply want to die when such a situation arises. Introduce wrappers that will cause the program to die in those cases. These wrappers are temporary only to ease the transition to let `git_config_set` die by default. They will be removed later on when `git_config_set` itself has been replaced by `git_config_set_gently`. Signed-off-by: NPatrick Steinhardt <ps@pks.im> Signed-off-by: NJunio C Hamano <gitster@pobox.com>
-
- 06 2月, 2016 26 次提交
-
-
由 Junio C Hamano 提交于
Signed-off-by: NJunio C Hamano <gitster@pobox.com>
-
由 Junio C Hamano 提交于
* lv/add-doc-working-tree: git-add doc: do not say working directory when you mean working tree
-
由 Junio C Hamano 提交于
Documentation for "git fetch --depth" has been updated for clarity. * ss/clone-depth-single-doc: docs: clarify that --depth for git-fetch works with newly initialized repos docs: say "commits" in the --depth option wording for git-clone docs: clarify that passing --depth to git-clone implies --single-branch
-
由 Junio C Hamano 提交于
* sg/t6050-failing-editor-test-fix: t6050-replace: make failing editor test more robust
-
由 Junio C Hamano 提交于
* ew/for-each-ref-doc: for-each-ref: document `creatordate` and `creator` fields
-
由 Junio C Hamano 提交于
Drop a few old "todo" items by deciding that the change one of them suggests is not such a good idea, and doing the change the other one suggested to do. * ss/user-manual: user-manual: add addition gitweb information user-manual: add section documenting shallow clones glossary: define the term shallow clone user-manual: remove temporary branch entry from todo list
-
由 Junio C Hamano 提交于
The underlying machinery used by "ls-files -o" and other commands have been taught not to create empty submodule ref cache for a directory that is not a submodule. This removes a ton of wasted CPU cycles. * jk/ref-cache-non-repository-optim: resolve_gitlink_ref: ignore non-repository paths clean: make is_git_repository a public function
-
由 Junio C Hamano 提交于
dirname() emulation has been added, as Msys2 lacks it. * js/dirname-basename: mingw: avoid linking to the C library's isalpha() t0060: loosen overly strict expectations t0060: verify that basename() and dirname() work as expected compat/basename.c: provide a dirname() compatibility function compat/basename: make basename() conform to POSIX Refactor skipping DOS drive prefixes
-
由 Junio C Hamano 提交于
* tb/complete-word-diff-regex: completion: complete "diff --word-diff-regex="
-
由 Junio C Hamano 提交于
* pw/completion-stash: completion: update completion arguments for stash
-
由 Junio C Hamano 提交于
* pw/completion-show-branch: completion: complete show-branch "--date-order"
-
由 Junio C Hamano 提交于
* jk/completion-rebase: completion: add missing git-rebase options
-
由 Junio C Hamano 提交于
A few options of "git diff" did not work well when the command was run from a subdirectory. * nd/diff-with-path-params: diff: make -O and --output work in subdirectory diff-no-index: do not take a redundant prefix argument
-
由 Junio C Hamano 提交于
The "split" subcommand of "git subtree" (in contrib/) incorrectly skipped merges when it shouldn't, which was corrected. * dw/subtree-split-do-not-drop-merge: contrib/subtree: fix "subtree split" skipped-merge bug
-
由 Junio C Hamano 提交于
* ew/svn-1.9.0-auth: git-svn: fix auth parameter handling on SVN 1.9.0+
-
由 Junio C Hamano 提交于
"git tag" started listing a tag "foo" as "tags/foo" when a branch named "foo" exists in the same repository; remove this unnecessary disambiguation, which is a regression introduced in v2.7.0. * jk/list-tag-2.7-regression: tag: do not show ambiguous tag names as "tags/foo" t6300: use test_atom for some un-modern tests
-
由 Junio C Hamano 提交于
The description for SANITY prerequisite the test suite uses has been clarified both in the comment and in the implementation. * jk/sanity: test-lib: clarify and tighten SANITY
-
由 Junio C Hamano 提交于
A recent optimization to filter-branch in v2.7.0 introduced a regression when --prune-empty filter is used, which has been corrected. * jk/filter-branch-no-index: filter-branch: resolve $commit^{tree} in no-index case
-
由 Junio C Hamano 提交于
Many codepaths that run "gc --auto" before exiting kept packfiles mapped and left the file descriptors to them open, which was not friendly to systems that cannot remove files that are open. They now close the packs before doing so. * js/close-packs-before-gc: receive-pack: release pack files before garbage-collecting merge: release pack files before garbage-collecting am: release pack files before garbage-collecting fetch: release pack files before garbage-collecting
-
由 Junio C Hamano 提交于
"git rebase", unlike all other callers of "gc --auto", did not ignore the exit code from "gc --auto". * jk/ok-to-fail-gc-auto-in-rebase: rebase: ignore failures from "gc --auto"
-
由 Junio C Hamano 提交于
Asking gitweb for a nonexistent commit left a warning in the server log. Somebody may want to follow this up with a new test, perhaps? IIRC, we do test that no Perl warnings are given to the server log, so this should have been caught if our test coverage were good. * ho/gitweb-squelch-undef-warning: gitweb: squelch "uninitialized value" warning
-
由 Junio C Hamano 提交于
Some codepaths used fopen(3) when opening a fixed path in $GIT_DIR (e.g. COMMIT_EDITMSG) that is meant to be left after the command is done. This however did not work well if the repository is set to be shared with core.sharedRepository and the umask of the previous user is tighter. They have been made to work better by calling unlink(2) and retrying after fopen(3) fails with EPERM. * js/fopen-harder: Handle more file writes correctly in shared repos commit: allow editing the commit message even in shared repos
-
由 Junio C Hamano 提交于
The ignore mechanism saw a few regressions around untracked file listing and sparse checkout selection areas in 2.7.0; the change that is responsible for the regression has been reverted. * nd/exclusion-regression-fix: Revert "dir.c: don't exclude whole dir prematurely if neg pattern may match"
-
由 Junio C Hamano 提交于
"git reflog" incorrectly assumed that all objects that used to be at the tip of a ref must be commits, which caused it to segfault. * dk/reflog-walk-with-non-commit: reflog-walk: don't segfault on non-commit sha1's in the reflog
-
由 Junio C Hamano 提交于
The documentation has been updated to hint the connection between the '--signoff' option and DCO. * dw/signoff-doc: Expand documentation describing --signoff
-
由 Junio C Hamano 提交于
A few unportable C construct have been spotted by clang compiler and have been fixed. * jk/clang-pedantic: bswap: add NO_UNALIGNED_LOADS define avoid shifting signed integers 31 bits
-