- 03 Jul, 2017 1 commit
-
-
Next to including several files, our "common.h" header also declares various macros which are then used throughout the project. As such, we have to make sure to always include this file first in all implementation files. Otherwise, we might encounter problems or even silent behavioural differences due to macros or defines not being defined as they should be. So in fact, our header and implementation files should make sure to always include "common.h" first. This commit does so by establishing a common include pattern. Header files inside of "src" will now always include "common.h" as its first other file, separated by a newline from all the other includes to make it stand out as special. There are two cases for the implementation files. If they do have a matching header file, they will always include this one first, leading to "common.h" being transitively included as first file. If they do not have a matching header file, they instead include "common.h" as first file themselves. This fixes the outlined problems and will become our standard practice for header and source files inside of the "src/" from now on.
Patrick Steinhardt committed
-
- 03 Mar, 2017 1 commit
-
-
An untracked file in a submodule should not prevent a rebase from starting. Even if the submodule's SHA is changed, and that file would conflict with a new tracked file, it's still OK to start the rebase and discover the conflict later. Signed-off-by: David Turner <dturner@twosigma.com>
David Turner committed
-
- 28 Feb, 2017 1 commit
-
-
Only use defaults for `git_futils_writebuffer` when flags == 0, lest (1 << 31) be treated as the defaults.
Edward Thomson committed
-
- 13 Feb, 2017 1 commit
-
-
The `path_repository` variable is actually confusing to think about, as it is not always clear what the repository actually is. It may either be the path to the folder containing worktree and .git directory, the path to .git itself, a worktree or something entirely different. Actually, the intent of the variable is to hold the path to the gitdir, which is either the .git directory or the bare repository. Rename the variable to `gitdir` to avoid confusion. While at it, also rename `path_gitlink` to `gitlink` to improve consistency.
Patrick Steinhardt committed
-
- 29 Dec, 2016 2 commits
-
-
Error messages should be sentence fragments, and therefore: 1. Should not begin with a capital letter, 2. Should not conclude with punctuation, and 3. Should not end a sentence and begin a new one
Edward Thomson committed -
Jacques Germishuys committed
-
- 02 Dec, 2016 1 commit
-
-
git_rebase_finish relies on head_detached being set, but rebase_init_merge was only setting it when branch->ref_name was unset. But branch->ref_name would be set to "HEAD" in the case of detached HEAD being either implicitly (NULL) or explicitly passed to git_rebase_init.
David Turner committed
-
- 06 Oct, 2016 1 commit
-
-
`git-rebase--merge` does not ask for time sorting, but uses the default. We now produce the same default time-ordered output as git, so make us of that since it's not always the same output as our time sorting.
Carlos Martín Nieto committed
-
- 01 Jun, 2016 1 commit
-
-
It looks like we're getting the operation and not doing anything with it, when in fact we are asserting that it's not null. Simply assert that we are within the operation boundary instead of using the `git_array_get` macro to do this for us.
Edward Thomson committed
-
- 03 May, 2016 1 commit
-
-
Edward Thomson committed
-
- 21 Apr, 2016 2 commits
-
-
When rebasing with IDs, we do not return to the `branch`, we remain in a detached HEAD state.
Edward Thomson committed -
When `init`ing a rebase from a detached HEAD, be sure to remember that we were in a detached HEAD state so that we can correctly `abort` the object that we just created.
Edward Thomson committed
-
- 23 Feb, 2016 1 commit
-
-
Convert `rebase_alloc` to use our usual error propagation patterns, that is accept an out-parameter and return an error code that is to be checked by the caller. This allows us to use the GITERR_CHECK_ALLOC macro, which helps static analysis.
Patrick Steinhardt committed
-
- 15 Feb, 2016 1 commit
-
-
When performing an in-memory rebase, keep a single index for the duration, so that callers have the expected index lifecycle and do not hold on to an index that is free'd out from under them.
Edward Thomson committed
-
- 11 Feb, 2016 2 commits
-
-
Allow callers of rebase to specify custom merge options. This may allow custom conflict resolution, or failing fast when conflicts are detected.
Edward Thomson committed -
Introduce the ability to rebase in-memory or in a bare repository. When `rebase_options.inmemory` is specified, the resultant `git_rebase` session will not be persisted to disk. Callers may still analyze the rebase operations, resolve any conflicts against the in-memory index and create the commits. Neither `HEAD` nor the working directory will be updated during this process.
Edward Thomson committed
-
- 12 Jul, 2015 1 commit
-
-
The header src/cc-compat.h defines portable format specifiers PRIuZ, PRIdZ, and PRIxZ. The original report highlighted the need to use these specifiers in examples/network/fetch.c. For this commit, I checked all C source and header files not in deps/ and transitioned to the appropriate format specifier where appropriate.
Matthew Plough committed
-
- 09 Jun, 2015 1 commit
-
-
Coverity complains about the git_rawobj ones because we use a loop in which we keep remembering the old version, and we end up copying our object as the base, so we want to have the data pointer be NULL.
Carlos Martín Nieto committed
-
- 20 Apr, 2015 5 commits
-
-
Edward Thomson committed
-
`git_rebase_init` and `git_rebase_open` should take a `git_rebase_options` and use it for future rebase operations on that `rebase` object.
Edward Thomson committed -
Edward Thomson committed
-
Edward Thomson committed
-
In `git_rebase_operation_current()`, indicate when a rebase has not started (with `GIT_REBASE_NO_OPERATION`) rather than conflating that with the first operation being in-progress.
Edward Thomson committed
-
- 03 Mar, 2015 3 commits
-
-
Carlos Martín Nieto committed
-
This function is meant to simulate what git does in the reset command, so we should include the reflog message in that.
Carlos Martín Nieto committed -
The signature for the reflog is not something which changes dynamically. Almost all uses will be NULL, since we want for the repository's default identity to be used, making it noise. In order to allow for changing the identity, we instead provide git_repository_set_ident() and git_repository_ident() which allow a user to override the choice of signature.
Carlos Martín Nieto committed
-
- 27 Feb, 2015 1 commit
-
-
Edward Thomson committed
-
- 14 Feb, 2015 2 commits
-
-
Provide git_indexwriter_init_for_operation for the common locking pattern in merge, rebase, revert and cherry-pick.
Edward Thomson committed -
Edward Thomson committed
-
- 13 Feb, 2015 3 commits
-
-
Switch to a standard branch-switching pattern of a `SAFE` checkout, then updating `HEAD`.
Edward Thomson committed -
Don't require the branch to rebase, if given `NULL`, simply look up `HEAD`.
Edward Thomson committed -
Users may want to try to pay attention to the `exec` field on all rebase operations.
Edward Thomson committed
-
- 12 Feb, 2015 1 commit
-
-
Jameson Miller committed
-
- 30 Dec, 2014 1 commit
-
-
Jacques Germishuys committed
-
- 29 Dec, 2014 1 commit
-
-
Jacques Germishuys committed
-
- 06 Dec, 2014 1 commit
-
-
Make it consistent between git_note_create() and git_note_remote() by putting it after the repository.
Carlos Martín Nieto committed
-
- 27 Oct, 2014 4 commits
-
-
Edward Thomson committed
-
Rename git_merge_head to git_annotated_commit, as it becomes used in more operations than just merge.
Edward Thomson committed -
Edward Thomson committed
-
Edward Thomson committed
-