docurium 0.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/.gitignore +3 -0
- data/Gemfile +5 -0
- data/LICENCE +19 -0
- data/README.md +39 -0
- data/TODO.txt +19 -0
- data/bin/cm +31 -0
- data/docurium.gemspec +25 -0
- data/lib/docurium.rb +435 -0
- data/lib/docurium/cli.rb +10 -0
- data/site/css/style.css +236 -0
- data/site/images/search_icon.png +0 -0
- data/site/index.html +65 -0
- data/site/js/backbone.js +27 -0
- data/site/js/docurium.js +649 -0
- data/site/js/json2.js +26 -0
- data/site/js/underscore.js +26 -0
- data/site/shared/css/documentation.css +797 -0
- data/site/shared/css/pygments.css +60 -0
- data/site/shared/images/active-arrow.png +0 -0
- data/site/shared/images/background-v2.png +0 -0
- data/site/shared/images/background-white.png +0 -0
- data/site/shared/images/dropdown_sprites.jpg +0 -0
- data/site/shared/images/footer_logo.png +0 -0
- data/site/shared/images/logo.png +0 -0
- data/site/shared/images/nav-rule.png +0 -0
- data/site/shared/images/next_step_arrow.gif +0 -0
- data/site/shared/images/qmark.png +0 -0
- data/site/shared/js/documentation.js +43 -0
- data/site/shared/js/jquery.js +154 -0
- data/test/fixtures/git2/api.docurium +6 -0
- data/test/fixtures/git2/blob.h +121 -0
- data/test/fixtures/git2/commit.h +302 -0
- data/test/fixtures/git2/common.h +98 -0
- data/test/fixtures/git2/errors.h +149 -0
- data/test/fixtures/git2/index.h +270 -0
- data/test/fixtures/git2/object.h +147 -0
- data/test/fixtures/git2/odb.h +302 -0
- data/test/fixtures/git2/odb_backend.h +107 -0
- data/test/fixtures/git2/oid.h +191 -0
- data/test/fixtures/git2/refs.h +325 -0
- data/test/fixtures/git2/repository.h +217 -0
- data/test/fixtures/git2/revwalk.h +187 -0
- data/test/fixtures/git2/signature.h +81 -0
- data/test/fixtures/git2/tag.h +297 -0
- data/test/fixtures/git2/thread-utils.h +71 -0
- data/test/fixtures/git2/tree.h +266 -0
- data/test/fixtures/git2/types.h +162 -0
- data/test/fixtures/git2/zlib.h +58 -0
- data/test/repo_test.rb +101 -0
- data/test/test_helper.rb +29 -0
- metadata +167 -0
@@ -0,0 +1,217 @@
|
|
1
|
+
/*
|
2
|
+
* This file is free software; you can redistribute it and/or modify
|
3
|
+
* it under the terms of the GNU General Public License, version 2,
|
4
|
+
* as published by the Free Software Foundation.
|
5
|
+
*
|
6
|
+
* In addition to the permissions in the GNU General Public License,
|
7
|
+
* the authors give you unlimited permission to link the compiled
|
8
|
+
* version of this file into combinations with other programs,
|
9
|
+
* and to distribute those combinations without any restriction
|
10
|
+
* coming from the use of this file. (The General Public License
|
11
|
+
* restrictions do apply in other respects; for example, they cover
|
12
|
+
* modification of the file, and distribution when not linked into
|
13
|
+
* a combined executable.)
|
14
|
+
*
|
15
|
+
* This file is distributed in the hope that it will be useful, but
|
16
|
+
* WITHOUT ANY WARRANTY; without even the implied warranty of
|
17
|
+
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
18
|
+
* General Public License for more details.
|
19
|
+
*
|
20
|
+
* You should have received a copy of the GNU General Public License
|
21
|
+
* along with this program; see the file COPYING. If not, write to
|
22
|
+
* the Free Software Foundation, 51 Franklin Street, Fifth Floor,
|
23
|
+
* Boston, MA 02110-1301, USA.
|
24
|
+
*/
|
25
|
+
#ifndef INCLUDE_git_repository_h__
|
26
|
+
#define INCLUDE_git_repository_h__
|
27
|
+
|
28
|
+
#include "common.h"
|
29
|
+
#include "types.h"
|
30
|
+
#include "oid.h"
|
31
|
+
|
32
|
+
/**
|
33
|
+
* @file git2/repository.h
|
34
|
+
* @brief Git repository management routines
|
35
|
+
* @defgroup git_repository Git repository management routines
|
36
|
+
* @ingroup Git
|
37
|
+
* @{
|
38
|
+
*/
|
39
|
+
GIT_BEGIN_DECL
|
40
|
+
|
41
|
+
/**
|
42
|
+
* Open a git repository.
|
43
|
+
*
|
44
|
+
* The 'path' argument must point to an existing git repository
|
45
|
+
* folder, e.g.
|
46
|
+
*
|
47
|
+
* /path/to/my_repo/.git/ (normal repository)
|
48
|
+
* objects/
|
49
|
+
* index
|
50
|
+
* HEAD
|
51
|
+
*
|
52
|
+
* /path/to/bare_repo/ (bare repository)
|
53
|
+
* objects/
|
54
|
+
* index
|
55
|
+
* HEAD
|
56
|
+
*
|
57
|
+
* The method will automatically detect if 'path' is a normal
|
58
|
+
* or bare repository or fail is 'path' is neither.
|
59
|
+
*
|
60
|
+
* @param repository pointer to the repo which will be opened
|
61
|
+
* @param path the path to the repository
|
62
|
+
* @return 0 on success; error code otherwise
|
63
|
+
*/
|
64
|
+
GIT_EXTERN(int) git_repository_open(git_repository **repository, const char *path);
|
65
|
+
|
66
|
+
|
67
|
+
/**
|
68
|
+
* Open a git repository by manually specifying all its paths
|
69
|
+
*
|
70
|
+
* @param repository pointer to the repo which will be opened
|
71
|
+
*
|
72
|
+
* @param git_dir The full path to the repository folder
|
73
|
+
* e.g. a '.git' folder for live repos, any folder for bare
|
74
|
+
* Equivalent to $GIT_DIR.
|
75
|
+
* Cannot be NULL.
|
76
|
+
*
|
77
|
+
* @param git_object_directory The full path to the ODB folder.
|
78
|
+
* the folder where all the loose and packed objects are stored
|
79
|
+
* Equivalent to $GIT_OBJECT_DIRECTORY.
|
80
|
+
* If NULL, "$GIT_DIR/objects/" is assumed.
|
81
|
+
*
|
82
|
+
* @param git_index_file The full path to the index (dircache) file
|
83
|
+
* Equivalent to $GIT_INDEX_FILE.
|
84
|
+
* If NULL, "$GIT_DIR/index" is assumed.
|
85
|
+
*
|
86
|
+
* @param git_work_tree The full path to the working tree of the repository,
|
87
|
+
* if the repository is not bare.
|
88
|
+
* Equivalent to $GIT_WORK_TREE.
|
89
|
+
* If NULL, the repository is assumed to be bare.
|
90
|
+
*
|
91
|
+
* @return 0 on success; error code otherwise
|
92
|
+
*/
|
93
|
+
GIT_EXTERN(int) git_repository_open2(git_repository **repository,
|
94
|
+
const char *git_dir,
|
95
|
+
const char *git_object_directory,
|
96
|
+
const char *git_index_file,
|
97
|
+
const char *git_work_tree);
|
98
|
+
|
99
|
+
|
100
|
+
/**
|
101
|
+
* Open a git repository by manually specifying its paths and
|
102
|
+
* the object database it will use.
|
103
|
+
*
|
104
|
+
* @param repository pointer to the repo which will be opened
|
105
|
+
*
|
106
|
+
* @param git_dir The full path to the repository folder
|
107
|
+
* e.g. a '.git' folder for live repos, any folder for bare
|
108
|
+
* Equivalent to $GIT_DIR.
|
109
|
+
* Cannot be NULL.
|
110
|
+
*
|
111
|
+
* @param object_database A pointer to a git_odb created & initialized
|
112
|
+
* by the user (e.g. with custom backends). This object database
|
113
|
+
* will be owned by the repository and will be automatically free'd.
|
114
|
+
* It should not be manually free'd by the user, or this
|
115
|
+
* git_repository object will become invalid.
|
116
|
+
*
|
117
|
+
* @param git_index_file The full path to the index (dircache) file
|
118
|
+
* Equivalent to $GIT_INDEX_FILE.
|
119
|
+
* If NULL, "$GIT_DIR/index" is assumed.
|
120
|
+
*
|
121
|
+
* @param git_work_tree The full path to the working tree of the repository,
|
122
|
+
* if the repository is not bare.
|
123
|
+
* Equivalent to $GIT_WORK_TREE.
|
124
|
+
* If NULL, the repository is assumed to be bare.
|
125
|
+
*
|
126
|
+
* @return 0 on success; error code otherwise
|
127
|
+
*/
|
128
|
+
|
129
|
+
GIT_EXTERN(int) git_repository_open3(git_repository **repository,
|
130
|
+
const char *git_dir,
|
131
|
+
git_odb *object_database,
|
132
|
+
const char *git_index_file,
|
133
|
+
const char *git_work_tree);
|
134
|
+
|
135
|
+
/**
|
136
|
+
* Get the object database behind a Git repository
|
137
|
+
*
|
138
|
+
* @param repo a repository object
|
139
|
+
* @return a pointer to the object db
|
140
|
+
*/
|
141
|
+
GIT_EXTERN(git_odb *) git_repository_database(git_repository *repo);
|
142
|
+
|
143
|
+
/**
|
144
|
+
* Get the Index file of a Git repository
|
145
|
+
*
|
146
|
+
* This is a cheap operation; the index is only opened on the first call,
|
147
|
+
* and subsequent calls only retrieve the previous pointer.
|
148
|
+
*
|
149
|
+
* @param index Pointer where to store the index
|
150
|
+
* @param repo a repository object
|
151
|
+
* @return 0 on success; error code if the index could not be opened
|
152
|
+
*/
|
153
|
+
GIT_EXTERN(int) git_repository_index(git_index **index, git_repository *repo);
|
154
|
+
|
155
|
+
/**
|
156
|
+
* Free a previously allocated repository
|
157
|
+
*
|
158
|
+
* Note that after a repository is free'd, all the objects it has spawned
|
159
|
+
* will still exist until they are manually closed by the user
|
160
|
+
* with `git_object_close`, but accessing any of the attributes of
|
161
|
+
* an object without a backing repository will result in undefined
|
162
|
+
* behavior
|
163
|
+
*
|
164
|
+
* @param repo repository handle to close. If NULL nothing occurs.
|
165
|
+
*/
|
166
|
+
GIT_EXTERN(void) git_repository_free(git_repository *repo);
|
167
|
+
|
168
|
+
/**
|
169
|
+
* Creates a new Git repository in the given folder.
|
170
|
+
*
|
171
|
+
* TODO:
|
172
|
+
* - Reinit the repository
|
173
|
+
* - Create config files
|
174
|
+
*
|
175
|
+
* @param repo_out pointer to the repo which will be created or reinitialized
|
176
|
+
* @param path the path to the repository
|
177
|
+
* @param is_bare if true, a Git repository without a working directory is created
|
178
|
+
* at the pointed path. If false, provided path will be considered as the working
|
179
|
+
* directory into which the .git directory will be created.
|
180
|
+
*
|
181
|
+
* @return 0 on success; error code otherwise
|
182
|
+
*/
|
183
|
+
GIT_EXTERN(int) git_repository_init(git_repository **repo_out, const char *path, unsigned is_bare);
|
184
|
+
|
185
|
+
/**
|
186
|
+
* Check if a repository is empty
|
187
|
+
*
|
188
|
+
* An empty repository has just been initialized and contains
|
189
|
+
* no commits.
|
190
|
+
*
|
191
|
+
* @param repo Repo to test
|
192
|
+
* @return 1 if the repository is empty, 0 if it isn't, error code
|
193
|
+
* if the repository is corrupted
|
194
|
+
*/
|
195
|
+
GIT_EXTERN(int) git_repository_is_empty(git_repository *repo);
|
196
|
+
|
197
|
+
/**
|
198
|
+
* Get the normalized path to the git repository.
|
199
|
+
*
|
200
|
+
* @param repo a repository object
|
201
|
+
* @return absolute path to the git directory
|
202
|
+
*/
|
203
|
+
GIT_EXTERN(const char *) git_repository_path(git_repository *repo);
|
204
|
+
|
205
|
+
/**
|
206
|
+
* Get the normalized path to the working directory of the repository.
|
207
|
+
*
|
208
|
+
* If the repository is bare, there is no working directory and NULL we be returned.
|
209
|
+
*
|
210
|
+
* @param repo a repository object
|
211
|
+
* @return NULL if the repository is bare; absolute path to the working directory otherwise.
|
212
|
+
*/
|
213
|
+
GIT_EXTERN(const char *) git_repository_workdir(git_repository *repo);
|
214
|
+
|
215
|
+
/** @} */
|
216
|
+
GIT_END_DECL
|
217
|
+
#endif
|
@@ -0,0 +1,187 @@
|
|
1
|
+
/*
|
2
|
+
* This file is free software; you can redistribute it and/or modify
|
3
|
+
* it under the terms of the GNU General Public License, version 2,
|
4
|
+
* as published by the Free Software Foundation.
|
5
|
+
*
|
6
|
+
* In addition to the permissions in the GNU General Public License,
|
7
|
+
* the authors give you unlimited permission to link the compiled
|
8
|
+
* version of this file into combinations with other programs,
|
9
|
+
* and to distribute those combinations without any restriction
|
10
|
+
* coming from the use of this file. (The General Public License
|
11
|
+
* restrictions do apply in other respects; for example, they cover
|
12
|
+
* modification of the file, and distribution when not linked into
|
13
|
+
* a combined executable.)
|
14
|
+
*
|
15
|
+
* This file is distributed in the hope that it will be useful, but
|
16
|
+
* WITHOUT ANY WARRANTY; without even the implied warranty of
|
17
|
+
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
18
|
+
* General Public License for more details.
|
19
|
+
*
|
20
|
+
* You should have received a copy of the GNU General Public License
|
21
|
+
* along with this program; see the file COPYING. If not, write to
|
22
|
+
* the Free Software Foundation, 51 Franklin Street, Fifth Floor,
|
23
|
+
* Boston, MA 02110-1301, USA.
|
24
|
+
*/
|
25
|
+
#ifndef INCLUDE_git_revwalk_h__
|
26
|
+
#define INCLUDE_git_revwalk_h__
|
27
|
+
|
28
|
+
#include "common.h"
|
29
|
+
#include "types.h"
|
30
|
+
#include "oid.h"
|
31
|
+
|
32
|
+
/**
|
33
|
+
* @file git2/revwalk.h
|
34
|
+
* @brief Git revision traversal routines
|
35
|
+
* @defgroup git_revwalk Git revision traversal routines
|
36
|
+
* @ingroup Git
|
37
|
+
* @{
|
38
|
+
*/
|
39
|
+
GIT_BEGIN_DECL
|
40
|
+
|
41
|
+
/**
|
42
|
+
* Sort the repository contents in no particular ordering;
|
43
|
+
* this sorting is arbitrary, implementation-specific
|
44
|
+
* and subject to change at any time.
|
45
|
+
* This is the default sorting for new walkers.
|
46
|
+
*/
|
47
|
+
#define GIT_SORT_NONE (0)
|
48
|
+
|
49
|
+
/**
|
50
|
+
* Sort the repository contents in topological order
|
51
|
+
* (parents before children); this sorting mode
|
52
|
+
* can be combined with time sorting.
|
53
|
+
*/
|
54
|
+
#define GIT_SORT_TOPOLOGICAL (1 << 0)
|
55
|
+
|
56
|
+
/**
|
57
|
+
* Sort the repository contents by commit time;
|
58
|
+
* this sorting mode can be combined with
|
59
|
+
* topological sorting.
|
60
|
+
*/
|
61
|
+
#define GIT_SORT_TIME (1 << 1)
|
62
|
+
|
63
|
+
/**
|
64
|
+
* Iterate through the repository contents in reverse
|
65
|
+
* order; this sorting mode can be combined with
|
66
|
+
* any of the above.
|
67
|
+
*/
|
68
|
+
#define GIT_SORT_REVERSE (1 << 2)
|
69
|
+
|
70
|
+
/**
|
71
|
+
* Allocate a new revision walker to iterate through a repo.
|
72
|
+
*
|
73
|
+
* This revision walker uses a custom memory pool and an internal
|
74
|
+
* commit cache, so it is relatively expensive to allocate.
|
75
|
+
*
|
76
|
+
* For maximum performance, this revision walker should be
|
77
|
+
* reused for different walks.
|
78
|
+
*
|
79
|
+
* This revision walker is *not* thread safe: it may only be
|
80
|
+
* used to walk a repository on a single thread; however,
|
81
|
+
* it is possible to have several revision walkers in
|
82
|
+
* several different threads walking the same repository.
|
83
|
+
*
|
84
|
+
* @param walker pointer to the new revision walker
|
85
|
+
* @param repo the repo to walk through
|
86
|
+
* @return 0 on success; error code otherwise
|
87
|
+
*/
|
88
|
+
GIT_EXTERN(int) git_revwalk_new(git_revwalk **walker, git_repository *repo);
|
89
|
+
|
90
|
+
/**
|
91
|
+
* Reset the revision walker for reuse.
|
92
|
+
*
|
93
|
+
* This will clear all the pushed and hidden commits, and
|
94
|
+
* leave the walker in a blank state (just like at
|
95
|
+
* creation) ready to receive new commit pushes and
|
96
|
+
* start a new walk.
|
97
|
+
*
|
98
|
+
* The revision walk is automatically reset when a walk
|
99
|
+
* is over.
|
100
|
+
*
|
101
|
+
* @param walker handle to reset.
|
102
|
+
*/
|
103
|
+
GIT_EXTERN(void) git_revwalk_reset(git_revwalk *walker);
|
104
|
+
|
105
|
+
/**
|
106
|
+
* Mark a commit to start traversal from.
|
107
|
+
*
|
108
|
+
* The given OID must belong to a commit on the walked
|
109
|
+
* repository.
|
110
|
+
*
|
111
|
+
* The given commit will be used as one of the roots
|
112
|
+
* when starting the revision walk. At least one commit
|
113
|
+
* must be pushed the repository before a walk can
|
114
|
+
* be started.
|
115
|
+
*
|
116
|
+
* @param walker the walker being used for the traversal.
|
117
|
+
* @param oid the oid of the commit to start from.
|
118
|
+
* @return 0 on success; error code otherwise
|
119
|
+
*/
|
120
|
+
GIT_EXTERN(int) git_revwalk_push(git_revwalk *walk, const git_oid *oid);
|
121
|
+
|
122
|
+
|
123
|
+
/**
|
124
|
+
* Mark a commit (and its ancestors) uninteresting for the output.
|
125
|
+
*
|
126
|
+
* The given OID must belong to a commit on the walked
|
127
|
+
* repository.
|
128
|
+
*
|
129
|
+
* The resolved commit and all its parents will be hidden from the
|
130
|
+
* output on the revision walk.
|
131
|
+
*
|
132
|
+
* @param walker the walker being used for the traversal.
|
133
|
+
* @param commit the commit that will be ignored during the traversal
|
134
|
+
* @return 0 on success; error code otherwise
|
135
|
+
*/
|
136
|
+
GIT_EXTERN(int) git_revwalk_hide(git_revwalk *walk, const git_oid *oid);
|
137
|
+
|
138
|
+
/**
|
139
|
+
* Get the next commit from the revision walk.
|
140
|
+
*
|
141
|
+
* The initial call to this method is *not* blocking when
|
142
|
+
* iterating through a repo with a time-sorting mode.
|
143
|
+
*
|
144
|
+
* Iterating with Topological or inverted modes makes the initial
|
145
|
+
* call blocking to preprocess the commit list, but this block should be
|
146
|
+
* mostly unnoticeable on most repositories (topological preprocessing
|
147
|
+
* times at 0.3s on the git.git repo).
|
148
|
+
*
|
149
|
+
* The revision walker is reset when the walk is over.
|
150
|
+
*
|
151
|
+
* @param oid Pointer where to store the oid of the next commit
|
152
|
+
* @param walk the walker to pop the commit from.
|
153
|
+
* @return GIT_SUCCESS if the next commit was found;
|
154
|
+
* GIT_EREVWALKOVER if there are no commits left to iterate
|
155
|
+
*/
|
156
|
+
GIT_EXTERN(int) git_revwalk_next(git_oid *oid, git_revwalk *walk);
|
157
|
+
|
158
|
+
/**
|
159
|
+
* Change the sorting mode when iterating through the
|
160
|
+
* repository's contents.
|
161
|
+
*
|
162
|
+
* Changing the sorting mode resets the walker.
|
163
|
+
*
|
164
|
+
* @param walk the walker being used for the traversal.
|
165
|
+
* @param sort_mode combination of GIT_SORT_XXX flags
|
166
|
+
*/
|
167
|
+
GIT_EXTERN(void) git_revwalk_sorting(git_revwalk *walk, unsigned int sort_mode);
|
168
|
+
|
169
|
+
/**
|
170
|
+
* Free a revision walker previously allocated.
|
171
|
+
*
|
172
|
+
* @param walk traversal handle to close. If NULL nothing occurs.
|
173
|
+
*/
|
174
|
+
GIT_EXTERN(void) git_revwalk_free(git_revwalk *walk);
|
175
|
+
|
176
|
+
/**
|
177
|
+
* Return the repository on which this walker
|
178
|
+
* is operating.
|
179
|
+
*
|
180
|
+
* @param walk the revision walker
|
181
|
+
* @return the repository being walked
|
182
|
+
*/
|
183
|
+
GIT_EXTERN(git_repository *) git_revwalk_repository(git_revwalk *walk);
|
184
|
+
|
185
|
+
/** @} */
|
186
|
+
GIT_END_DECL
|
187
|
+
#endif
|
@@ -0,0 +1,81 @@
|
|
1
|
+
/*
|
2
|
+
* This file is free software; you can redistribute it and/or modify
|
3
|
+
* it under the terms of the GNU General Public License, version 2,
|
4
|
+
* as published by the Free Software Foundation.
|
5
|
+
*
|
6
|
+
* In addition to the permissions in the GNU General Public License,
|
7
|
+
* the authors give you unlimited permission to link the compiled
|
8
|
+
* version of this file into combinations with other programs,
|
9
|
+
* and to distribute those combinations without any restriction
|
10
|
+
* coming from the use of this file. (The General Public License
|
11
|
+
* restrictions do apply in other respects; for example, they cover
|
12
|
+
* modification of the file, and distribution when not linked into
|
13
|
+
* a combined executable.)
|
14
|
+
*
|
15
|
+
* This file is distributed in the hope that it will be useful, but
|
16
|
+
* WITHOUT ANY WARRANTY; without even the implied warranty of
|
17
|
+
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
18
|
+
* General Public License for more details.
|
19
|
+
*
|
20
|
+
* You should have received a copy of the GNU General Public License
|
21
|
+
* along with this program; see the file COPYING. If not, write to
|
22
|
+
* the Free Software Foundation, 51 Franklin Street, Fifth Floor,
|
23
|
+
* Boston, MA 02110-1301, USA.
|
24
|
+
*/
|
25
|
+
#ifndef INCLUDE_git_signature_h__
|
26
|
+
#define INCLUDE_git_signature_h__
|
27
|
+
|
28
|
+
#include "common.h"
|
29
|
+
#include "types.h"
|
30
|
+
|
31
|
+
/**
|
32
|
+
* @file git2/signature.h
|
33
|
+
* @brief Git signature creation
|
34
|
+
* @defgroup git_signature Git signature creation
|
35
|
+
* @ingroup Git
|
36
|
+
* @{
|
37
|
+
*/
|
38
|
+
GIT_BEGIN_DECL
|
39
|
+
|
40
|
+
/**
|
41
|
+
* Create a new action signature. The signature must be freed
|
42
|
+
* manually or using git_signature_free
|
43
|
+
*
|
44
|
+
* @param name name of the person
|
45
|
+
* @param mail email of the person
|
46
|
+
* @param time time when the action happened
|
47
|
+
* @param offset timezone offset in minutes for the time
|
48
|
+
* @return the new sig, NULL on out of memory
|
49
|
+
*/
|
50
|
+
GIT_EXTERN(git_signature *) git_signature_new(const char *name, const char *email, git_time_t time, int offset);
|
51
|
+
|
52
|
+
/**
|
53
|
+
* Create a new action signature with a timestamp of 'now'. The
|
54
|
+
* signature must be freed manually or using git_signature_free
|
55
|
+
*
|
56
|
+
* @param name name of the person
|
57
|
+
* @param email email of the person
|
58
|
+
* @return the new sig, NULL on out of memory
|
59
|
+
*/
|
60
|
+
GIT_EXTERN(git_signature *) git_signature_now(const char *name, const char *email);
|
61
|
+
|
62
|
+
|
63
|
+
/**
|
64
|
+
* Create a copy of an existing signature.
|
65
|
+
*
|
66
|
+
* All internal strings are also duplicated.
|
67
|
+
* @param sig signature to duplicated
|
68
|
+
* @return a copy of sig, NULL on out of memory
|
69
|
+
*/
|
70
|
+
GIT_EXTERN(git_signature *) git_signature_dup(const git_signature *sig);
|
71
|
+
|
72
|
+
/**
|
73
|
+
* Free an existing signature
|
74
|
+
*
|
75
|
+
* @param sig signature to free
|
76
|
+
*/
|
77
|
+
GIT_EXTERN(void) git_signature_free(git_signature *sig);
|
78
|
+
|
79
|
+
/** @} */
|
80
|
+
GIT_END_DECL
|
81
|
+
#endif
|