- 13 Feb, 2017 13 commits
-
-
Expose the function `repo_init_create_head` as `git_repository_create_head`.
Patrick Steinhardt committed -
A repository's configuartion file can always be found in the GIT_COMMON_DIR, which has been newly introduced. For normal repositories this does change nothing, but for working trees this change allows to access the shared configuration file.
Patrick Steinhardt committed -
Patrick Steinhardt committed
-
The refdb_fs_backend is not aware of the git commondir, which stores common objects like the o bject database and packed/loose refereensces when worktrees are used. Make refdb_fs_backend aware of the common directory by introducing a new commonpath variable that points to the actual common path of the database and using it instead of the gitdir for the mentioned objects.
Patrick Steinhardt committed -
The variable '.path' of the refdb_fs_backend struct becomes confusing regarding the introduction of the git commondir. It does not immediatly become obvious what it should point to. Fix this problem by renaming the variable to `gitpath`, clarifying that it acutally points to the `.git` directory of the repository, in contrast to the commonpath directory, which points to the directory containing shared objects like references and the object store.
Patrick Steinhardt committed -
Patrick Steinhardt committed
-
The recent introduction of the commondir variable of a repository requires callers to distinguish whether their files are part of the dot-git directory or the common directory shared between multpile worktrees. In order to take the burden from callers and unify knowledge on which files reside where, the `git_repository_item_path` function has been introduced which encapsulate this knowledge. Modify most existing callers of `git_repository_path` to use `git_repository_item_path` instead, thus making them implicitly aware of the common directory.
Patrick Steinhardt committed -
Patrick Steinhardt committed
-
The commondir variable stores the path to the common directory. The common directory is used to store objects and references shared across multiple repositories. A current use case is the newly introduced `git worktree` feature, which sets up a separate working copy, where the backing git object store and references are pointed to by the common directory.
Patrick Steinhardt committed -
Patrick Steinhardt committed
-
Add a new branch that causes a merge conflict to `testrepo` so that we are able to test merging in worktrees.
Patrick Steinhardt committed -
Create worktrees for submodule repositories. The worktrees are created for the parent repository (e.g. the one containing submodules) and for the contained child repository.
Patrick Steinhardt committed -
Patrick Steinhardt committed
-
- 10 Feb, 2017 5 commits
-
-
Add support for lowercase proxy environment variables
Edward Thomson committed -
Christopher Bargren committed
-
dirname with DOS prefixes
Edward Thomson committed -
Flag options in git_stash_apply and git_stash_pop as being optional
Edward Thomson committed -
rename detection: don't try to detect submodule renames
Edward Thomson committed
-
- 09 Feb, 2017 5 commits
-
-
Edward Thomson committed
-
Edward Thomson committed
-
Test that shows that submodules are incorrectly considered in renames, and `git_merge_trees` will fail to lookup the submodule as a blob.
Edward Thomson committed -
The options parameter in both git_stash_apply and git_stash_pop can be NULL. They should be flagged as such in the documentation.
Remy Suen committed -
Fix digest credentials for proxy in windows
Edward Thomson committed
-
- 08 Feb, 2017 7 commits
-
-
Christopher Bargren committed
-
curl supports HTTPS_PROXY in addition to https_proxy (and their http counterparts). This change ensures parity with curl's behavior.
Christopher Bargren committed -
As of recently, we failed to correctly discover repositories at a Win32 system root. Instead of aborting the upwards-traversal of the file system, we were looping infinitely when traversal started at either a Win32 drive prefix ("C:/") or a network path ("//somehost"). The issue has been fixed, so add a test to catch regressions.
Patrick Steinhardt committed -
When calling `git_path_dirname_r` on a Win32 prefix, e.g. a drive or network share prefix, we always want to return the trailing '/'. This does not work currently when passing in a path like 'C:', where the '/' would not be appended correctly. Fix this by appending a '/' if we try to normalize a Win32 prefix and there is no trailing '/'.
Patrick Steinhardt committed -
Getting the dirname of a filesystem root should return the filesystem root itself. E.g. the dirname of "/" is always "/". On Windows, we emulate this behavior and as such, we should return e.g. "C:/" if calling dirname on "C:/". But we currently fail to do so and instead return ".", as we do not check if we actually have a Windows prefix before stripping off the last directory component. Fix this by calling out to `win32_prefix_length` immediately after stripping trailing slashes, returning early if we have a prefix.
Patrick Steinhardt committed -
Extract code which determines if a path is at a Windows system's root. This incluses drive prefixes (e.g. "C:\") as well as network computer names (e.g. "//computername/").
Patrick Steinhardt committed -
Flag checkout_opts in git_reset as optional
Edward Thomson committed
-
- 06 Feb, 2017 2 commits
-
-
Christopher Bargren committed
-
Chris Bargren committed
-
- 04 Feb, 2017 3 commits
-
-
The check_outs argument can be NULL and should be flagged accordingly in the header file.
Remy Suen committed -
Flag given_opts in git_revert as optional
Edward Thomson committed -
The given_opts argument can actually be NULL and thus should be flagged accordingly in the header file.
Remy Suen committed
-
- 02 Feb, 2017 4 commits
-
-
Vector reverse overflow
Edward Thomson committed -
The code reversing a vector initially determines the rear-pointer by simply subtracting 1 from the vector's length. Obviously, this fails if the vector is empty, in which case we have an integer overflow. Fix the issue by returning early if the vector is empty.
Patrick Steinhardt committed -
Adam Niedzielski committed
-
Update docs for git_oid_fromstrn and p
Edward Thomson committed
-
- 27 Jan, 2017 1 commit
-
-
Matthew Plough committed
-