src


Log

Author Commit Date CI Message
Ben Straub b31667fb 2012-07-27T20:29:06 Checkout: add head- and ref-centric checkouts. Renamed git_checkout_index to what it really was, and removed duplicate code from clone.c. Added git_checkout_ref, which updates HEAD and hands off to git_checkout_head. Added tests for the options the caller can pass to git_checkout_*.
Ben Straub 4d83399d 2012-07-27T11:55:58 Adjust for msvc pedantry.
Ben Straub b494cdbd 2012-07-27T11:50:32 Checkout: handle deeply-nested submodules better. Now creating intermediate directories where the submodule is deep, like "src/deps/foosubmodule".
Ben Straub 8a155a04 2012-07-27T11:49:34 Fix mismatched git_branch_create args.
Ben Straub 7affe23d 2012-07-27T11:23:44 Use new git_remote_update_tips signature.
Ben Straub a4827a5b 2012-07-27T11:17:21 Merge remote-tracking branch 'upstream/development' into test-merge
Vicent Martí 60d5cc57 2012-07-27T09:52:44 Merge pull request #834 from carlosmn/network-callbacks Add a struct for network callbacks
Vicent Marti f0244463 2012-07-27T18:49:37 branch: Add `repository` argument to `create` Yes, we can get the repository from the owner of the object, but having it marked explicitly makes the API more consistent.
Vicent Marti b41a30bd 2012-07-27T18:45:55 Merge remote-tracking branch 'nulltoken/topic/branch-rework' into development
Vicent Marti b84f75c3 2012-07-27T18:43:02 reflog: Rename `entry_drop` to `drop`
Vicent Marti 43b67d49 2012-07-27T18:39:40 Merge remote-tracking branch 'nulltoken/topic/reflog-delete' into development
Ben Straub 6eb240b0 2012-07-26T19:09:37 Checkout: use caller's flags for open()
Carlos Martín Nieto c0c39025 2012-07-27T02:37:15 remote: fix C99-ism
Ben Straub 095ccc01 2012-07-26T16:31:49 Checkout: implementation of most options
Sascha Cunz eff5b499 2012-07-25T02:34:12 Remotes: Use correct url in git_remote_connect
Sascha Cunz 413d5563 2012-07-25T02:10:35 Remotes: Save a cleaned pushurl (by deleting it from the config)
Sascha Cunz 76501590 2012-07-25T01:33:15 Remotes: Setter for url+pushurl; Getter for pushurl
Sascha Cunz 3ed4b501 2012-07-25T01:32:31 Remotes: Load/Save for fetch.foo.pushurl
Sascha Cunz cb020f0d 2012-07-25T01:14:58 Remove unneccessary string transformation
Ben Straub b401bace 2012-07-26T13:12:21 Restructure for better checkout options * Removed the #define for defaults * Promoted progress structure to top-level API call argument
Ben Straub ef9905c9 2012-07-26T12:58:44 checkout: introduce git_checkout_opts Refactor checkout into several more-sensible entry points, which consolidates common options into a single structure that may be passed around.
nulltoken c3be5c5a 2012-07-21T19:19:46 reflog: keep the reflog name in sync with the reference name
nulltoken 40c75652 2012-07-21T12:33:46 reflog: prevent git_reflog_append() from persisting the reflog back to disk
nulltoken ae833178 2012-07-21T12:32:02 reflog: prevent git_reflog_read() from chocking when no log exists yet
nulltoken bd72425d 2012-07-18T20:12:45 reflog: introduce git_reflog_write()
nulltoken d284b3de 2012-07-16T12:12:53 reflog: rename git_reflog_write() to git_reflog_append()
nulltoken 59341a5d 2012-07-16T18:31:22 reflog: introduce git_reflog_entry_drop()
nulltoken 7c458e3a 2012-07-17T10:53:19 reflog: add GIT_OID_HEX_ZERO constant
nulltoken 786a17cd 2012-07-20T16:41:41 branch: enforce git_branch_delete() parameter checking
nulltoken ef4d795e 2012-07-20T16:39:22 refs: drop git_reference_remote_tracking_from_branch()
nulltoken fb910281 2012-07-20T16:38:54 branch: introduce git_branch_tracking()
nulltoken bf9e8cc8 2012-07-20T16:34:08 branch: make git_branch_move() reference based
nulltoken 88bcd515 2012-07-20T16:27:56 branch: introduce git_reference_is_branch()
nulltoken eed378b6 2012-07-20T16:19:04 branch: introduce git_branch_lookup()
nulltoken b308c11e 2012-07-19T15:39:16 branch: change git_branch_create() to make it return a reference
nulltoken 326ca710 2012-07-19T15:32:58 branch: remove useless header
yorah a1773f9d 2012-07-23T18:16:09 Add flag to turn off pathspec testing for diff and status
yorah ffbc689c 2012-07-18T16:26:55 Fix getting status of files containing brackets
yorah 02a0d651 2012-07-12T16:31:59 Add git_buf_unescape and git__unescape to unescape all characters in a string (in-place)
Carlos Martín Nieto 944d250f 2012-07-24T10:34:28 update_tips: report error if it fails to create a ref
Carlos Martín Nieto 7e48635d 2012-07-23T21:56:06 revparse: initialize 'parsed' in case the user doesn't give a number with the @-notation
Carlos Martín Nieto 279b45b0 2012-07-23T21:22:53 revparse: don't allow an empty string Asking the library for "" used to give HEAD, but that's trying to impose a default at the wrong layer. Make it fail.
Ben Straub dc03369c 2012-07-21T20:12:28 checkout: create submodule dirs
Ben Straub 7cae2bcd 2012-07-21T20:11:37 filter: fix memory leak
Carlos Martín Nieto b3aaa7a7 2012-07-21T17:52:51 Add a struct for network callbacks Currently only update_tips is used, but it prepares the way for progress output during download.
Vicent Martí 5b786963 2012-07-21T07:56:59 Merge pull request #818 from nulltoken/rework Revparse rework
Carlos Martín Nieto 5d9cfa07 2012-07-20T17:52:53 config: escape subsection names when creating them This allows us to set options like "some.foo\\ish.var". This closes #830
Vicent Martí c8a1892e 2012-07-20T06:56:09 Merge pull request #831 from schu/tree-walk-order tree: fix ordering for git_tree_walk
Russell Belfer 71d27358 2012-07-19T10:23:45 Fix bug with merging diffs with null options A diff that is created with a NULL options parameter could result in a NULL prefix string, but diff merge was unconditionally strdup'ing it. I added a test to replicate the issue and then a new method that does the right thing with NULL values.
Michael Schubert c6f42953 2012-07-19T17:33:48 tree: fix ordering for git_tree_walk Josh Triplett noticed libgit2 actually does preorder entries in tree_walk_post instead of postorder. Also, we continued walking even when an error occured in the callback. Fix #773; also, allow both pre- and postorder walking.
Ben Straub 8651c10f 2012-07-17T19:57:37 Checkout: obey core.symlinks.
nulltoken e2c81fca 2012-07-15T11:59:31 revparse: deploy git_object_peel()
nulltoken db9be945 2012-07-15T11:06:15 object: introduce git_object_peel() Partially fix #530
nulltoken b8748c12 2012-07-15T00:46:26 revparse: enhance parsing engine
Ben Straub bfc65634 2012-07-17T08:08:34 Merge branch 'development' into clone
Michael Schubert 6fc0bdc5 2012-07-17T10:52:16 Remove old error handling code
Ben Straub 1d68fcd0 2012-07-16T16:16:11 Checkout: handle symlinks. Includes unfinished win32 implementation.
Ben Straub 9587895f 2012-07-16T12:06:23 Migrate code to git_filter_blob_contents. Also removes the unnecessary check for filter length, since git_filters_apply does the right thing when there are none, and it's more efficient than this.
Ben Straub 41ad70d0 2012-07-16T11:32:24 Use git_blob__getbuf.
Vicent Marti 227f3131 2012-07-15T14:11:58 attr: Rename the `git_attr__` exports Pevents collisions with the original libgit, which also exports those exact symbols. Fixes #822
Carlos Martín Nieto d1af70b0 2012-07-13T20:43:56 indexer: delay resolving deltas Not all delta bases are available on the first try. By delaying resolving all deltas until the end, we avoid decompressing some of the data twice or even more times, saving effort and time.
Ben Straub dc1b0909 2012-07-13T16:44:13 Create filtered_blob_contents out of parts on hand.
Carlos Martín Nieto 7b8c9e12 2012-07-13T20:46:16 pkt: correctly advertise capabilitites The correct way to advertise out capabilities is by appending them to the first 'want' line, using SP as separator, instead of NUL as the server does. Inconsistent documentation lead to the use of NUL in libgit2. Fix this so we can request much more efficient packs from the remote which reduces the indexing time considerably.
Vicent Martí 0848ec24 2012-07-13T06:56:24 Merge pull request #815 from nulltoken/topic/revparse-refac More revparse <3
nulltoken 151d81a6 2012-07-12T22:03:28 refs: fix a memory leak
nulltoken b5f90115 2012-07-12T22:31:53 revparse: fix propagation of error
nulltoken 5a6f31f2 2012-07-12T13:20:29 revparse: only allow decimal specifiers in carete and tilde synatx passing 0 to git_strol(32|64) let the implementation guess if it's dealing with an octal number or a decimal one. Let's make it safe and ensure that both 'HEAD@{010}' and 'HEAD@{10}' point at the same commit.
nulltoken d1b7921a 2012-07-12T11:46:20 revparse: fix disambiguation of refs and abbrev oids
nulltoken bb89cf94 2012-07-12T10:57:31 revparse: simplify handling of the colon syntax
nulltoken dc1f4b32 2012-07-12T10:52:19 tree: unfound tree entry returns GIT_ENOTFOUND
nulltoken 1c3edb30 2012-07-12T09:46:45 tree: prevent git_tree_entry_free() from segfaulting when being passed a NULL tree_entry
Russell Belfer 39b8e047 2012-07-12T11:52:10 Missed a couple of khash inline dependencies
Russell Belfer 72ee0787 2012-07-12T11:48:12 Isolate khash inlines from global namespace khash.h was globally #define'ing "inline" which messes with other files. Let's keep it as "kh_inline".
Carlos Martín Nieto b7158c53 2012-07-12T20:48:46 Use GIT_INLINE instead of inline
Vicent Martí dd4345b4 2012-07-12T09:42:54 Merge pull request #789 from carlosmn/odb-foreach odb: add git_odb_foreach()
Vicent Martí 0cf6b2f2 2012-07-12T09:37:09 Merge pull request #805 from nulltoken/fix/revwalk-email-parsing Fix revwalk email parsing
Vicent Martí db2d4061 2012-07-12T09:35:35 Merge pull request #814 from nulltoken/topic/revparse-refac Revparse refactoring: a start
Vicent Martí 48bcf81d 2012-07-12T09:32:44 Merge pull request #812 from arrbee/assorted-tweaks Assorted goodies
Ben Straub 339f3d07 2012-07-11T19:17:07 Move is_dot_or_dotdotW into path.h.
nulltoken 12595ab8 2012-07-12T00:52:01 revparse: deploy git_reference_remote_tracking_from_branch()
nulltoken 84f18e35 2012-07-12T00:44:07 refs: introduce git_reference_remote_tracking_from_branch()
nulltoken 2d012c0c 2012-07-11T16:52:02 revparse: deploy git_commit_nth_gen_ancestor()
nulltoken b1aca6ea 2012-07-11T16:14:12 commit: introduce git_commit_nth_gen_ancestor()
nulltoken 2b92a154 2012-07-11T11:20:20 commit: reduce code duplication
nulltoken 8f17ed80 2012-07-10T20:52:56 revparse: simplify the parsing of described object
Ben Straub 81167385 2012-07-11T15:33:19 Fix compile and workings on msvc. Signed-off-by: Ben Straub <bstraub@github.com>
nulltoken 8aedf1d5 2012-07-05T17:02:03 signature: prevent angle bracket usage in identity
nulltoken 118cf57d 2012-07-04T16:06:07 revwalk: relax the parsing of the commit time
Ben Straub d024419f 2012-07-11T10:40:53 Add git_path_is_empty_dir.
Ben Straub c3b5099f 2012-07-11T10:10:31 Add git_path_is_dot_or_dotdot. Also, remove some duplication in the clone test suite.
Ben Straub 822d9dd5 2012-07-11T09:50:12 Remove duplicate of git_repository_head_tree.
Vicent Martí a13a30ac 2012-07-11T05:29:51 Merge pull request #801 from nulltoken/fix/ref-renaming refs and revparse love <3
Russell Belfer 54e29b93 2012-07-10T23:51:32 Fix missing NUL termination of buffer
Russell Belfer 991a56c7 2012-07-10T15:35:38 Add flag to write gitlink on setting repo workdir This added a flag to the `git_repository_set_workdir()` function that enables generation of a `.git` gitlink file that links the new workdir to the parent repository. Essentially, the flag tells the function to write out the changes to disk to permanently set the workdir of the repository to the new path. If you pass this flag as true, then setting the workdir to something other than the default workdir (i.e. the parent of the .git repo directory), will create a plain file named ".git" with the standard gitlink contents "gitdir: <repo-path>", and also update the "core.worktree" and "core.bare" config values. Setting the workdir to the default repo workdir will clear the core.worktree flag (but still permanently set core.bare to false). BTW, the libgit2 API does not currently provide a function for clearing the workdir and converting a non-bare repo into a bare one.
Russell Belfer b3ff1dab 2012-07-10T15:22:39 Adding git_config_foreach_match() iteration fn Adding a new config iteration function that let's you iterate over just the config entries that match a particular regular expression. The old foreach becomes a simple use of this with an empty pattern. This also fixes an apparent bug in the existing `git_config_foreach` where returning a non-zero value from the iteration callback was not correctly aborting the iteration and the returned value was not being propogated back to the caller of foreach. Added to tests to cover all these changes.
Russell Belfer c3a875c9 2012-07-10T15:20:08 Adding unicode space to match crlf patterns Adding 0x85 to `git__isspace` since we also look for that in filter.c as a whitespace character.
Russell Belfer b0fe1129 2012-07-10T15:13:30 Add path utilities to resolve relative paths This makes it easy to take a buffer containing a path with relative references (i.e. .. or . path segments) and resolve all of those into a clean path. This can be applied to URLs as well as file paths which can be useful. As part of this, I made the drive-letter detection apply on all platforms, not just windows. If you give a path that looks like "c:/..." on any platform, it seems like we might as well detect that as a rooted path. I suppose if you create a directory named "x:" on another platform and want to use that as the beginning of a relative path under the root directory of your repo, this could cause a problem, but then it seems like you're asking for trouble.
Russell Belfer 039fc406 2012-07-10T15:10:14 Add a couple of useful git_buf utilities * `git_buf_rfind` (with tests and tests for `git_buf_rfind_next`) * `git_buf_puts_escaped` and `git_buf_puts_escaped_regex` (with tests) to copy strings into a buffer while injecting an escape sequence (e.g. '\') in front of particular characters.
Russell Belfer 4d3a7b78 2012-07-10T21:45:16 Merge pull request #793 from libgit2/tree-entry-by-path Bring back `entry_bypath`
Russell Belfer 19017a24 2012-07-10T16:24:17 Merge pull request #797 from yorah/fix/inter-hunk-context diff: make inter-hunk-context default value git-compliant