|
3b5f7954
|
2013-10-21T13:42:42
|
|
Create git_diff_line and extend git_diff_hunk
Instead of having functions with so very many parameters to pass
hunk and line data, this takes the existing git_diff_hunk struct
and extends it with more hunk data, plus adds a git_diff_line.
Those structs are used to pass back hunk and line data instead of
the old APIs that took tons of parameters.
Some work that was previously only being done for git_diff_patch
creation (scanning the diff content for exact line counts) is now
done for all callbacks, but the performance difference should not
be noticable.
|
|
10672e3e
|
2013-10-15T15:10:07
|
|
Diff API cleanup
This lays groundwork for separating formatting options from diff
creation options. This groups the formatting flags separately
from the diff list creation flags and reorders the options. This
also tweaks some APIs to further separate code that uses patches
from code that just looks at git_diffs.
|
|
3ff1d123
|
2013-10-11T14:51:54
|
|
Rename diff objects and split patch.h
This makes no functional change to diff but renames a couple of
the objects and splits the new git_patch (formerly git_diff_patch)
into a new header file.
|
|
0e0cf787
|
2013-10-02T14:04:44
|
|
clone: put the callbacks struct directly in the clone options
There's no need for this to be a pointer to somewhere else.
|
|
e3c131c5
|
2013-09-16T05:02:25
|
|
remote: move the credentials callback to the struct
Move this one as well, letting us have a single way of setting the
callbacks for the remote, and removing fields from the clone options.
|
|
d31402a3
|
2013-09-16T04:20:05
|
|
remote: put the _download() callback with the others
The text progress and update_tips callbacks are already part of the
struct, which was meant to unify the callback setup, but the download
one was left out.
|
|
37f9e409
|
2013-09-13T21:43:00
|
|
Some tests with ident and crlf filters
Fixed the filter order to match core Git, too.
This test demonstrates an interesting behavior of core Git (which
is totally reasonable and which libgit2 matches, although mostly
by coincidence). If you use the ident filter and commit a file
with a garbage ident in it, like '$Id: this is just garbage$' and
then immediately do a 'git checkout-index' with the new file, Git
will not consider the file out of date and will not overwrite the
file with an updated $Id$. Libgit2 has the same behavior. If you
remove the file and then do a checkout-index, it will be replaced
with a filtered version that has injected the OID correctly.
|
|
605da51a
|
2013-09-17T09:50:30
|
|
No such thing as an orphan branch
Unfortunately git-core uses the term "unborn branch" and "orphan
branch" interchangeably. However, "orphan" is only really there for
the checkout command, which has the `--orphan` option so it doesn't
actually create the branch.
Branches never have parents, so the distinction of a branch with no
parents is odd to begin with. Crucially, the error messages deal with
unborn branches, so let's use that.
|
|
0c52b204
|
2013-09-09T11:07:17
|
|
Make work if built with threading enabled
|
|
b2395a82
|
2013-09-04T18:49:10
|
|
Only use callbacks when -n or -v in add example.
|
|
04fd2665
|
2013-09-04T18:44:12
|
|
Move statement after declarations in add example.
|
|
9a0e42c6
|
2013-09-04T18:43:14
|
|
Remove unnececery arguments priting in add example.
|
|
813937ce
|
2013-09-04T18:42:47
|
|
Better usage info in add example.
|
|
24d23220
|
2013-09-04T18:34:03
|
|
Add -u option to add example.
|
|
e8fa14d3
|
2013-09-03T19:11:50
|
|
Supported options information in add example.
|
|
62020aa8
|
2013-09-02T02:01:40
|
|
Adding add example.
|
|
60ee53df
|
2013-09-03T15:14:04
|
|
Split examples CMakeLists.txt
Also, this converts the examples/CMakeLists.txt from explicitly
listing to just globbing for all the individual C files.
|
|
255836dd
|
2013-09-01T18:35:39
|
|
Adding credentials callback to ls-remote and fetch too.
|
|
d6d52348
|
2013-09-01T18:30:11
|
|
Removing unneeded code duplication in ls-remote.c
|
|
0ea41445
|
2013-08-16T15:03:15
|
|
Improve isolation of new test from user environs
|
|
944c1589
|
2013-08-16T14:49:38
|
|
Add example like "git init"
|
|
c3ae0473
|
2013-07-27T05:31:28
|
|
Fix -n bug; default to all ancestors
|
|
bc6f0839
|
2013-07-05T15:22:21
|
|
Add a bunch more features to log example
|
|
a8b5f116
|
2013-07-03T17:00:50
|
|
Fix example/log.c pathspec handling of merges
This fixes the way the example log program decides if a merge
commit should be shown when a pathspec is given. Also makes it
easier to use the pathspec API to just check "does a tree match
anything in the pathspec" without allocating a match list.
|
|
733c4f3a
|
2013-07-03T15:12:14
|
|
more examples/log.c bug fixing
|
|
5a169711
|
2013-07-03T15:08:54
|
|
fix bug with order args and no revision
|
|
2b3bd8ec
|
2013-07-03T14:53:39
|
|
Fix example/log.c minor diffs with git log
|
|
f44c4fa1
|
2013-07-01T15:41:32
|
|
Add basic commit formatting to log output
|
|
8ba0ff69
|
2013-06-25T15:39:44
|
|
rev-parse example
|
|
d0628e2f
|
2013-06-25T15:39:13
|
|
More progress on log example
|
|
0d44d3dc
|
2013-06-24T23:21:23
|
|
Extending log example code
This adds more command line processing to the example version of
log. In particular, this adds the funky command line processing
that allows an arbitrary series of revisions followed by an
arbitrary number of paths and/or glob patterns.
The actual logging part still isn't implemented.
|
|
d39fff36
|
2013-06-23T20:33:57
|
|
Basic framework for log command
|
|
92808557
|
2013-06-20T15:10:42
|
|
Fix comment and copyright in example
|
|
f18f772a
|
2013-06-20T14:27:14
|
|
Add example implementation of long format status
|
|
22b6b82f
|
2013-06-20T12:16:06
|
|
Add status flags to force output sort order
Files in status will, be default, be sorted according to the case
insensitivity of the filesystem that we're running on. However,
in some cases, this is not desirable. Even on case insensitive
file systems, 'git status' at the command line will generally use
a case sensitive sort (like 'ls'). Some GUIs prefer to display a
list of file case insensitively even on case-sensitive platforms.
This adds two new flags: GIT_STATUS_OPT_SORT_CASE_SENSITIVELY
and GIT_STATUS_OPT_SORT_CASE_INSENSITIVELY that will override the
default sort order of the status output and give the user control.
This includes tests for exercising these new options and makes
the examples/status.c program emulate core Git and always use a
case sensitive sort.
|
|
cf300bb9
|
2013-06-20T11:39:31
|
|
Initial implementation of status example
|
|
5c8f37a3
|
2013-05-17T17:33:03
|
|
Extend diff example
Add --raw output format and (some) options to invoke rename/copy
detection on the diff.
|
|
8d784001
|
2013-05-16T10:43:10
|
|
Make examples/diff.c compile vs threadsafe library
|
|
58206c9a
|
2013-05-16T10:38:27
|
|
Add cat-file example and increase const use in API
This adds an example implementation that emulates git cat-file.
It is a convenient and relatively simple example of getting data
out of a repository.
Implementing this also revealed that there are a number of APIs
that are still not using const pointers to objects that really
ought to be. The main cause of this is that `git_vector_bsearch`
may need to call `git_vector_sort` before doing the search, so a
const pointer to the vector is not allowed. However, for tree
objects, with a little care, we can ensure that the vector of
tree entries is always sorted and allow lookups to take a const
pointer. Also, the missing const in commit objects just looks
like an oversight.
|
|
1fed6b07
|
2013-05-13T21:57:37
|
|
Fix trailing whitespaces
|
|
2b562c3a
|
2013-05-04T16:32:58
|
|
refs: remove the OID/SYMBOLIC filtering
Nobody should ever be using anything other than ALL at this level, so
remove the option altogether.
As part of this, git_reference_foreach_glob is now implemented in the
frontend using an iterator. Backends will later regain the ability of
doing the glob filtering in the backend.
|
|
6c1b6b7a
|
2013-04-23T16:21:47
|
|
examples: init the threading system
|
|
32ef1d1c
|
2013-04-16T00:17:40
|
|
Fix examples
|
|
d064c747
|
2013-04-15T23:18:24
|
|
Merge remote-tracking branch 'ben/unified-revparse' into development
|
|
20156653
|
2013-04-15T13:29:40
|
|
Clean up minor details
|
|
5961d5ea
|
2013-04-15T12:10:18
|
|
Clean up example code.
|
|
299a224b
|
2013-04-15T12:00:04
|
|
Change git_revparse to output git_object pointers
This will probably prevent many lookup/free
operations in calling code.
|
|
0d3ccf0b
|
2013-04-10T16:41:05
|
|
examples: Don't print weird characters
|
|
9da187e8
|
2013-04-09T11:40:00
|
|
Fix clang warnings and improve checks
|
|
ec7e240b
|
2013-04-09T05:07:12
|
|
Add rev-list example to makefiles
|
|
1aa21fe3
|
2013-04-09T05:03:51
|
|
Deprecate git_revparse_single and _rangelike
|
|
d9ecaf8c
|
2013-04-07T07:22:38
|
|
Merge remote-tracking branch 'gnprice/revwalk' into development
|
|
2e233285
|
2013-03-20T09:39:20
|
|
examples: a test, for rev-list
This test file could probably be improved by a framework like
the one in git.git:t/, or by using a language like Python instead
of shell.
The other examples would benefit from tests too. Probably best
to settle on a framework to write them in, then add more tests.
Signed-off-by: Greg Price <price@mit.edu>
|
|
8f7f5e55
|
2013-03-31T14:56:32
|
|
examples: rev-list
This demonstrates parts of the interface for specifying revisions that
Git users are familiar with from 'git rev-list', 'git log', and other
Git commands. A similar query interface is used in out-of-core
command-line programs that browse a Git repo (like 'tig'), and may be
useful for an 'advanced search' interface in GUI or web applications.
In this version, we parse all the query modifiers we can support with
the existing logic in revwalk: basic include/exclude commits, and the
ordering flags. More logic will be required to support '--grep',
'--author', the pickaxe '-S', etc.
Signed-off-by: Greg Price <price@mit.edu>
|
|
f8591e51
|
2013-04-04T11:44:50
|
|
General example: run against testrepo.git
Fixes #1455
|
|
e2886f1e
|
2013-03-20T21:13:43
|
|
Fix link issue in network examples
|
|
7bd53bf3
|
2013-03-02T13:52:38
|
|
Simplify diff example using revparse
When the examples/diff.c was written, there was not yet a revparse
API. Now we can use it to make command line parsing way better
with less code. Yay!
|
|
5c46937b
|
2013-02-26T09:00:37
|
|
Give props to Martin Pool
Martin Pool was the original author of the code referenced in the clone
example. Make note that he's given his permission and also give him the
proper credit.
|
|
a7ed7460
|
2013-02-15T15:58:13
|
|
Add rudimentary error checks and reformat comments
There were a number of functions assigning their return value to
`error` without much explanation. I added in some rudimentary
error checking to help flesh out the example.
Also, I reformatted all of the comments down to 80 cols (and in
some cases, slightly updated the wording).
|
|
9c258af0
|
2013-02-12T10:13:56
|
|
Merge pull request #1316 from ben/clone-cancel
Allow network operations to cancel
|
|
ef41ab88
|
2013-02-06T17:37:51
|
|
removed other references to api.html
|
|
fe95ac1b
|
2013-02-05T10:59:58
|
|
Allow progress callback to cancel fetch
This works by having the indexer watch the return
code of the callback, so will only take effect
on object boundaries.
|
|
7602cb7c
|
2013-01-31T10:44:57
|
|
Add user-from-url param to auth callback
|
|
c27e2112
|
2013-01-23T17:38:00
|
|
update examples to work on windows
|
|
75a0a800
|
2013-01-23T07:47:40
|
|
Don't clear the opt instance in the diff example.
The version field is overwritten otherwise. The opt instance is
already initialized properly.
|
|
cea994b9
|
2013-01-10T12:39:17
|
|
Don't call pthread_exit() in the callback.
Compilers that are not aware that pthread_exit() does not return
issue a warning when compiling the present code. This change
exchanges the call to pthread_exit() with a simple return
statement. According to the pthread specification this is
equivalent.
|
|
cd5ca5b9
|
2013-01-02T13:50:41
|
|
Merge pull request #1152 from ben/clone-api-structification
Segregate in-memory and persisted remotes
|
|
730df6d0
|
2013-01-02T13:43:54
|
|
Include checkout options inline
|
|
0642c143
|
2013-01-02T12:44:47
|
|
Move `url` to last place in parameter list
|
|
dbc4aa07
|
2012-12-28T22:00:24
|
|
Update showindex example
I find the showindex example to be pretty useful on occasion, but
there were are couple of output tweaks I wanted, plus I wanted the
ability to specify a path to an actual index file instead of having
to open the whole repository. This makes those changes and expands
the example slightly.
|
|
3de22567
|
2012-12-27T11:12:14
|
|
Fix warnings in example
|
|
69d1bd91
|
2012-12-21T15:30:46
|
|
Fix examples
|
|
29f27599
|
2012-12-20T10:51:09
|
|
Rename remote creation APIs
git_remote_add -> git_remote_create
git_remote_new -> git_remote_create_inmemory
|
|
316bca69
|
2012-12-19T17:07:12
|
|
Fix clone sample
|
|
56c72b75
|
2012-12-17T11:00:53
|
|
Fix diff constructor name order confusion
The diff constructor functions had some confusing names, where the
"old" side of the diff was coming after the "new" side. This
reverses the order in the function name to make it less confusing.
Specifically...
* git_diff_index_to_tree becomes git_diff_tree_to_index
* git_diff_workdir_to_index becomes git_diff_index_to_workdir
* git_diff_workdir_to_tree becomes git_diff_tree_to_workdir
|
|
cc3e9b5a
|
2012-12-16T10:50:10
|
|
Make building samples more friendly
|
|
b9e7e2b4
|
2012-12-14T13:46:45
|
|
Move non-options back out of options struct
|
|
0015b587
|
2012-12-14T13:18:06
|
|
Deploy git_clone_options to network sample
|
|
2b10a2b0
|
2012-12-13T11:47:14
|
|
Enable authenticated clones in network sample
|
|
24393ea6
|
2012-12-13T09:14:56
|
|
Stop premature remote freeing when cloning
|
|
34c8c754
|
2012-12-13T08:54:23
|
|
Fix network example
|
|
9267ff58
|
2012-11-29T20:01:24
|
|
Deploy GIT_REMOTE_CALLBACKS_INIT
|
|
2f8d30be
|
2012-11-29T15:05:04
|
|
Deploy GIT_DIFF_OPTIONS_INIT
|
|
b81aa2f1
|
2012-11-29T14:06:40
|
|
Deploy GIT_CHECKOUT_OPTS_INIT
|
|
df705148
|
2012-11-27T13:15:43
|
|
API updates for remote.h
Includes typedef for git_direction, and renames for
GIT_DIR_[FETCH|PUSH] to GIT_DIRECTION_(\1).
|
|
f45d51ff
|
2012-11-20T19:57:46
|
|
API updates for index.h
|
|
793c4385
|
2012-11-20T16:36:06
|
|
Update diff callback param order
This makes the diff functions that take callbacks both take
the payload parameter after the callback function pointers and
pass the payload as the last argument to the callback function
instead of the first. This should make them consistent with
other callbacks across the API.
|
|
e120123e
|
2012-11-20T14:01:46
|
|
API review / update for tree.h
|
|
3f63cc9e
|
2012-11-18T22:20:47
|
|
Examples: fix clone api
|
|
bac695b5
|
2012-11-18T22:20:26
|
|
Examples: fix reference names
|
|
aa8a76ef
|
2012-11-17T05:12:14
|
|
tag: rename git_tag_type to git_tag_target_type
|
|
bbe6dbec
|
2012-11-14T23:29:48
|
|
Add explicit git_index ptr to diff and checkout
A number of diff APIs and the `git_checkout_index` API take a
`git_repository` object an operate on the index. This updates
them to take a `git_index` pointer explicitly and only fall back
on the `git_repository` index if the index input is NULL. This
makes it easier to operate on a temporary index.
|
|
0f3def71
|
2012-11-09T11:19:46
|
|
Fix various cross-platform build issues
This fixes a number of warnings and problems with cross-platform
builds. Among other things, it's not safe to name a member of a
structure "strcmp" because that may be #defined.
|
|
b90500f0
|
2012-11-01T14:08:30
|
|
Improve docs, examples, warnings
This improves docs in some of the public header files, cleans
up and improves some of the example code, and fixes a couple
of pedantic warnings in places.
|
|
f45ec1a0
|
2012-10-29T20:04:21
|
|
index refactoring
|
|
1e3b8ed5
|
2012-10-24T14:07:07
|
|
Remove 'bytes' param from git_remote_download
|
|
9762ad99
|
2012-10-24T13:43:23
|
|
Renaming: fix example
|
|
7d222e13
|
2012-10-24T13:29:14
|
|
Network progress: rename things
git_indexer_stats and friends -> git_transfer_progress*
Also made git_transfer_progress members more sanely
named.
|
|
2dae54a9
|
2012-10-19T20:24:15
|
|
Improve clone sample's formatting
|
|
9c05c17b
|
2012-10-19T20:05:18
|
|
Checkout progress now reports completed/total steps
|