rugged 1.2.0 → 1.3.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/rugged/version.rb +1 -1
- data/vendor/libgit2/CMakeLists.txt +1 -1
- data/vendor/libgit2/cmake/FindLibSSH2.cmake +13 -0
- data/vendor/libgit2/include/git2/attr.h +7 -1
- data/vendor/libgit2/include/git2/blob.h +7 -1
- data/vendor/libgit2/include/git2/clone.h +1 -1
- data/vendor/libgit2/include/git2/common.h +19 -1
- data/vendor/libgit2/include/git2/deprecated.h +120 -0
- data/vendor/libgit2/include/git2/diff.h +3 -97
- data/vendor/libgit2/include/git2/email.h +127 -0
- data/vendor/libgit2/include/git2/filter.h +7 -1
- data/vendor/libgit2/include/git2/notes.h +2 -2
- data/vendor/libgit2/include/git2/oidarray.h +5 -8
- data/vendor/libgit2/include/git2/remote.h +4 -4
- data/vendor/libgit2/include/git2/repository.h +12 -10
- data/vendor/libgit2/include/git2/stash.h +1 -1
- data/vendor/libgit2/include/git2/stdint.h +3 -3
- data/vendor/libgit2/include/git2/sys/email.h +45 -0
- data/vendor/libgit2/include/git2/version.h +3 -3
- data/vendor/libgit2/include/git2.h +1 -0
- data/vendor/libgit2/src/CMakeLists.txt +7 -0
- data/vendor/libgit2/src/attr.c +24 -9
- data/vendor/libgit2/src/attr_file.c +23 -15
- data/vendor/libgit2/src/attr_file.h +3 -3
- data/vendor/libgit2/src/blame.c +4 -4
- data/vendor/libgit2/src/blame_git.c +1 -1
- data/vendor/libgit2/src/blob.c +15 -9
- data/vendor/libgit2/src/buffer.c +16 -8
- data/vendor/libgit2/src/buffer.h +2 -1
- data/vendor/libgit2/src/cc-compat.h +1 -7
- data/vendor/libgit2/src/checkout.c +6 -7
- data/vendor/libgit2/src/clone.c +1 -1
- data/vendor/libgit2/src/commit_graph.c +1 -1
- data/vendor/libgit2/src/config.c +1 -1
- data/vendor/libgit2/src/config_file.c +2 -2
- data/vendor/libgit2/src/config_parse.c +1 -1
- data/vendor/libgit2/src/describe.c +1 -1
- data/vendor/libgit2/src/diff.c +41 -173
- data/vendor/libgit2/src/email.c +299 -0
- data/vendor/libgit2/src/email.h +25 -0
- data/vendor/libgit2/src/filter.c +7 -1
- data/vendor/libgit2/src/hash/sha1/sha1dc/sha1.c +8 -8
- data/vendor/libgit2/src/ignore.c +2 -2
- data/vendor/libgit2/src/indexer.c +37 -3
- data/vendor/libgit2/src/libgit2.c +23 -0
- data/vendor/libgit2/src/merge.c +7 -4
- data/vendor/libgit2/src/notes.c +31 -31
- data/vendor/libgit2/src/oidarray.c +10 -1
- data/vendor/libgit2/src/path.c +1 -1
- data/vendor/libgit2/src/path.h +1 -1
- data/vendor/libgit2/src/pathspec.c +1 -1
- data/vendor/libgit2/src/refdb_fs.c +1 -1
- data/vendor/libgit2/src/refs.c +2 -2
- data/vendor/libgit2/src/refspec.c +1 -1
- data/vendor/libgit2/src/remote.c +12 -5
- data/vendor/libgit2/src/repository.c +130 -19
- data/vendor/libgit2/src/repository.h +4 -0
- data/vendor/libgit2/src/reset.c +1 -1
- data/vendor/libgit2/src/revparse.c +4 -4
- data/vendor/libgit2/src/stash.c +1 -1
- data/vendor/libgit2/src/streams/openssl_legacy.c +1 -1
- data/vendor/libgit2/src/streams/openssl_legacy.h +1 -1
- data/vendor/libgit2/src/threadstate.c +2 -1
- data/vendor/libgit2/src/trailer.c +1 -1
- data/vendor/libgit2/src/transports/ssh.c +4 -4
- data/vendor/libgit2/src/transports/winhttp.c +1 -1
- data/vendor/libgit2/src/util.c +1 -1
- data/vendor/libgit2/src/util.h +1 -1
- data/vendor/libgit2/src/win32/findfile.c +1 -1
- data/vendor/libgit2/src/win32/posix.h +6 -6
- data/vendor/libgit2/src/win32/posix_w32.c +9 -6
- metadata +11 -6
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: d2445a318b46ff0a26c2fbc62b53b5351eb95cee994fa508d267b9c0f9a14edc
|
4
|
+
data.tar.gz: fe54aabe575a4a922f6fd8623252d26bcf278d40ba0823b21a367faab7411720
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 49024fdc5cb1f9a1703c8b142f38799aa2fe78eb0abb2506befc84e5899225a347cdb09af0af5709bd5f4b29599f5cd2ebe05757466803cba25e5b747fbe59ad
|
7
|
+
data.tar.gz: 024216a35e8310c6ac6dc5e7dfc73b06f06c66960f6307c3dd35f52f4d8ee46bab40504de2d73dd3f61df665aeccdef4dc41f2ed2ebed7411f5cfd7858e3ef00
|
data/lib/rugged/version.rb
CHANGED
@@ -0,0 +1,13 @@
|
|
1
|
+
# LIBSSH2_FOUND - system has the libssh2 library
|
2
|
+
# LIBSSH2_INCLUDE_DIR - the libssh2 include directory
|
3
|
+
# LIBSSH2_LIBRARY - the libssh2 library name
|
4
|
+
|
5
|
+
FIND_PATH(LIBSSH2_INCLUDE_DIR libssh2.h)
|
6
|
+
|
7
|
+
FIND_LIBRARY(LIBSSH2_LIBRARY NAMES ssh2 libssh2)
|
8
|
+
|
9
|
+
INCLUDE(FindPackageHandleStandardArgs)
|
10
|
+
find_package_handle_standard_args(LibSSH2
|
11
|
+
REQUIRED_VARS LIBSSH2_LIBRARY LIBSSH2_INCLUDE_DIR)
|
12
|
+
|
13
|
+
MARK_AS_ADVANCED(LIBSSH2_INCLUDE_DIR LIBSSH2_LIBRARY)
|
@@ -147,11 +147,17 @@ typedef struct {
|
|
147
147
|
/** A combination of GIT_ATTR_CHECK flags */
|
148
148
|
unsigned int flags;
|
149
149
|
|
150
|
+
#ifdef GIT_DEPRECATE_HARD
|
151
|
+
void *reserved;
|
152
|
+
#else
|
153
|
+
git_oid *commit_id;
|
154
|
+
#endif
|
155
|
+
|
150
156
|
/**
|
151
157
|
* The commit to load attributes from, when
|
152
158
|
* `GIT_ATTR_CHECK_INCLUDE_COMMIT` is specified.
|
153
159
|
*/
|
154
|
-
git_oid
|
160
|
+
git_oid attr_commit_id;
|
155
161
|
} git_attr_options;
|
156
162
|
|
157
163
|
#define GIT_ATTR_OPTIONS_VERSION 1
|
@@ -135,11 +135,17 @@ typedef struct {
|
|
135
135
|
/** Flags to control the filtering process, see `git_blob_filter_flag_t` above */
|
136
136
|
uint32_t flags;
|
137
137
|
|
138
|
+
#ifdef GIT_DEPRECATE_HARD
|
139
|
+
void *reserved;
|
140
|
+
#else
|
141
|
+
git_oid *commit_id;
|
142
|
+
#endif
|
143
|
+
|
138
144
|
/**
|
139
145
|
* The commit to load attributes from, when
|
140
146
|
* `GIT_BLOB_FILTER_ATTRIBUTES_FROM_COMMIT` is specified.
|
141
147
|
*/
|
142
|
-
git_oid
|
148
|
+
git_oid attr_commit_id;
|
143
149
|
} git_blob_filter_options;
|
144
150
|
|
145
151
|
#define GIT_BLOB_FILTER_OPTIONS_VERSION 1
|
@@ -133,7 +133,7 @@ typedef struct git_clone_options {
|
|
133
133
|
* The name of the branch to checkout. NULL means use the
|
134
134
|
* remote's default branch.
|
135
135
|
*/
|
136
|
-
const char*
|
136
|
+
const char *checkout_branch;
|
137
137
|
|
138
138
|
/**
|
139
139
|
* A callback used to create the new repository into which to
|
@@ -209,7 +209,9 @@ typedef enum {
|
|
209
209
|
GIT_OPT_GET_MWINDOW_FILE_LIMIT,
|
210
210
|
GIT_OPT_SET_MWINDOW_FILE_LIMIT,
|
211
211
|
GIT_OPT_SET_ODB_PACKED_PRIORITY,
|
212
|
-
GIT_OPT_SET_ODB_LOOSE_PRIORITY
|
212
|
+
GIT_OPT_SET_ODB_LOOSE_PRIORITY,
|
213
|
+
GIT_OPT_GET_EXTENSIONS,
|
214
|
+
GIT_OPT_SET_EXTENSIONS
|
213
215
|
} git_libgit2_opt_t;
|
214
216
|
|
215
217
|
/**
|
@@ -431,6 +433,22 @@ typedef enum {
|
|
431
433
|
* > Override the default priority of the loose ODB backend which
|
432
434
|
* > is added when default backends are assigned to a repository
|
433
435
|
*
|
436
|
+
* opts(GIT_OPT_GET_EXTENSIONS, git_strarray *out)
|
437
|
+
* > Returns the list of git extensions that are supported. This
|
438
|
+
* > is the list of built-in extensions supported by libgit2 and
|
439
|
+
* > custom extensions that have been added with
|
440
|
+
* > `GIT_OPT_SET_EXTENSIONS`. Extensions that have been negated
|
441
|
+
* > will not be returned. The returned list should be released
|
442
|
+
* > with `git_strarray_dispose`.
|
443
|
+
*
|
444
|
+
* opts(GIT_OPT_SET_EXTENSIONS, const char **extensions, size_t len)
|
445
|
+
* > Set that the given git extensions are supported by the caller.
|
446
|
+
* > Extensions supported by libgit2 may be negated by prefixing
|
447
|
+
* > them with a `!`. For example: setting extensions to
|
448
|
+
* > { "!noop", "newext" } indicates that the caller does not want
|
449
|
+
* > to support repositories with the `noop` extension but does want
|
450
|
+
* > to support repositories with the `newext` extension.
|
451
|
+
*
|
434
452
|
* @param option Option key
|
435
453
|
* @param ... value to set the option
|
436
454
|
* @return 0 on success, <0 on failure
|
@@ -294,6 +294,102 @@ typedef git_configmap git_cvar_map;
|
|
294
294
|
|
295
295
|
/**@}*/
|
296
296
|
|
297
|
+
/** @name Deprecated Diff Functions and Constants
|
298
|
+
*
|
299
|
+
* These functions and enumeration values are retained for backward
|
300
|
+
* compatibility. The newer versions of these functions and values
|
301
|
+
* should be preferred in all new code.
|
302
|
+
*
|
303
|
+
* There is no plan to remove these backward compatibility values at
|
304
|
+
* this time.
|
305
|
+
*/
|
306
|
+
/**@{*/
|
307
|
+
|
308
|
+
/**
|
309
|
+
* Formatting options for diff e-mail generation
|
310
|
+
*/
|
311
|
+
typedef enum {
|
312
|
+
/** Normal patch, the default */
|
313
|
+
GIT_DIFF_FORMAT_EMAIL_NONE = 0,
|
314
|
+
|
315
|
+
/** Don't insert "[PATCH]" in the subject header*/
|
316
|
+
GIT_DIFF_FORMAT_EMAIL_EXCLUDE_SUBJECT_PATCH_MARKER = (1 << 0),
|
317
|
+
|
318
|
+
} git_diff_format_email_flags_t;
|
319
|
+
|
320
|
+
/**
|
321
|
+
* Options for controlling the formatting of the generated e-mail.
|
322
|
+
*/
|
323
|
+
typedef struct {
|
324
|
+
unsigned int version;
|
325
|
+
|
326
|
+
/** see `git_diff_format_email_flags_t` above */
|
327
|
+
uint32_t flags;
|
328
|
+
|
329
|
+
/** This patch number */
|
330
|
+
size_t patch_no;
|
331
|
+
|
332
|
+
/** Total number of patches in this series */
|
333
|
+
size_t total_patches;
|
334
|
+
|
335
|
+
/** id to use for the commit */
|
336
|
+
const git_oid *id;
|
337
|
+
|
338
|
+
/** Summary of the change */
|
339
|
+
const char *summary;
|
340
|
+
|
341
|
+
/** Commit message's body */
|
342
|
+
const char *body;
|
343
|
+
|
344
|
+
/** Author of the change */
|
345
|
+
const git_signature *author;
|
346
|
+
} git_diff_format_email_options;
|
347
|
+
|
348
|
+
#define GIT_DIFF_FORMAT_EMAIL_OPTIONS_VERSION 1
|
349
|
+
#define GIT_DIFF_FORMAT_EMAIL_OPTIONS_INIT {GIT_DIFF_FORMAT_EMAIL_OPTIONS_VERSION, 0, 1, 1, NULL, NULL, NULL, NULL}
|
350
|
+
|
351
|
+
/**
|
352
|
+
* Create an e-mail ready patch from a diff.
|
353
|
+
*
|
354
|
+
* @deprecated git_email_create_from_diff
|
355
|
+
* @see git_email_create_from_diff
|
356
|
+
*/
|
357
|
+
GIT_EXTERN(int) git_diff_format_email(
|
358
|
+
git_buf *out,
|
359
|
+
git_diff *diff,
|
360
|
+
const git_diff_format_email_options *opts);
|
361
|
+
|
362
|
+
/**
|
363
|
+
* Create an e-mail ready patch for a commit.
|
364
|
+
*
|
365
|
+
* @deprecated git_email_create_from_commit
|
366
|
+
* @see git_email_create_from_commit
|
367
|
+
*/
|
368
|
+
GIT_EXTERN(int) git_diff_commit_as_email(
|
369
|
+
git_buf *out,
|
370
|
+
git_repository *repo,
|
371
|
+
git_commit *commit,
|
372
|
+
size_t patch_no,
|
373
|
+
size_t total_patches,
|
374
|
+
uint32_t flags,
|
375
|
+
const git_diff_options *diff_opts);
|
376
|
+
|
377
|
+
/**
|
378
|
+
* Initialize git_diff_format_email_options structure
|
379
|
+
*
|
380
|
+
* Initializes a `git_diff_format_email_options` with default values. Equivalent
|
381
|
+
* to creating an instance with GIT_DIFF_FORMAT_EMAIL_OPTIONS_INIT.
|
382
|
+
*
|
383
|
+
* @param opts The `git_blame_options` struct to initialize.
|
384
|
+
* @param version The struct version; pass `GIT_DIFF_FORMAT_EMAIL_OPTIONS_VERSION`.
|
385
|
+
* @return Zero on success; -1 on failure.
|
386
|
+
*/
|
387
|
+
GIT_EXTERN(int) git_diff_format_email_options_init(
|
388
|
+
git_diff_format_email_options *opts,
|
389
|
+
unsigned int version);
|
390
|
+
|
391
|
+
/**@}*/
|
392
|
+
|
297
393
|
/** @name Deprecated Error Functions and Constants
|
298
394
|
*
|
299
395
|
* These functions and enumeration values are retained for backward
|
@@ -683,6 +779,30 @@ GIT_EXTERN(int) git_oid_iszero(const git_oid *id);
|
|
683
779
|
|
684
780
|
/**@}*/
|
685
781
|
|
782
|
+
/** @name Deprecated OID Array Functions
|
783
|
+
*
|
784
|
+
* These types are retained for backward compatibility. The newer
|
785
|
+
* versions of these values should be preferred in all new code.
|
786
|
+
*
|
787
|
+
* There is no plan to remove these backward compatibility values at
|
788
|
+
* this time.
|
789
|
+
*/
|
790
|
+
/**@{*/
|
791
|
+
|
792
|
+
/**
|
793
|
+
* Free the memory referred to by the git_oidarray. This is an alias of
|
794
|
+
* `git_oidarray_dispose` and is preserved for backward compatibility.
|
795
|
+
*
|
796
|
+
* This function is deprecated, but there is no plan to remove this
|
797
|
+
* function at this time.
|
798
|
+
*
|
799
|
+
* @deprecated Use git_oidarray_dispose
|
800
|
+
* @see git_oidarray_dispose
|
801
|
+
*/
|
802
|
+
GIT_EXTERN(void) git_oidarray_free(git_oidarray *array);
|
803
|
+
|
804
|
+
/**@}*/
|
805
|
+
|
686
806
|
/** @name Deprecated Transfer Progress Types
|
687
807
|
*
|
688
808
|
* These types are retained for backward compatibility. The newer
|
@@ -133,6 +133,9 @@ typedef enum {
|
|
133
133
|
*/
|
134
134
|
GIT_DIFF_INDENT_HEURISTIC = (1u << 18),
|
135
135
|
|
136
|
+
/** Ignore blank lines */
|
137
|
+
GIT_DIFF_IGNORE_BLANK_LINES = (1u << 19),
|
138
|
+
|
136
139
|
/** Treat all files as text, disabling binary attributes & detection */
|
137
140
|
GIT_DIFF_FORCE_TEXT = (1u << 20),
|
138
141
|
/** Treat all files as binary, disabling text diffs */
|
@@ -168,10 +171,6 @@ typedef enum {
|
|
168
171
|
* can apply given diff information to binary files.
|
169
172
|
*/
|
170
173
|
GIT_DIFF_SHOW_BINARY = (1u << 30),
|
171
|
-
|
172
|
-
/** Ignore blank lines */
|
173
|
-
GIT_DIFF_IGNORE_BLANK_LINES = (1u << 31),
|
174
|
-
|
175
174
|
} git_diff_option_t;
|
176
175
|
|
177
176
|
/**
|
@@ -1376,99 +1375,6 @@ GIT_EXTERN(int) git_diff_stats_to_buf(
|
|
1376
1375
|
*/
|
1377
1376
|
GIT_EXTERN(void) git_diff_stats_free(git_diff_stats *stats);
|
1378
1377
|
|
1379
|
-
/**
|
1380
|
-
* Formatting options for diff e-mail generation
|
1381
|
-
*/
|
1382
|
-
typedef enum {
|
1383
|
-
/** Normal patch, the default */
|
1384
|
-
GIT_DIFF_FORMAT_EMAIL_NONE = 0,
|
1385
|
-
|
1386
|
-
/** Don't insert "[PATCH]" in the subject header*/
|
1387
|
-
GIT_DIFF_FORMAT_EMAIL_EXCLUDE_SUBJECT_PATCH_MARKER = (1 << 0),
|
1388
|
-
|
1389
|
-
} git_diff_format_email_flags_t;
|
1390
|
-
|
1391
|
-
/**
|
1392
|
-
* Options for controlling the formatting of the generated e-mail.
|
1393
|
-
*/
|
1394
|
-
typedef struct {
|
1395
|
-
unsigned int version;
|
1396
|
-
|
1397
|
-
/** see `git_diff_format_email_flags_t` above */
|
1398
|
-
uint32_t flags;
|
1399
|
-
|
1400
|
-
/** This patch number */
|
1401
|
-
size_t patch_no;
|
1402
|
-
|
1403
|
-
/** Total number of patches in this series */
|
1404
|
-
size_t total_patches;
|
1405
|
-
|
1406
|
-
/** id to use for the commit */
|
1407
|
-
const git_oid *id;
|
1408
|
-
|
1409
|
-
/** Summary of the change */
|
1410
|
-
const char *summary;
|
1411
|
-
|
1412
|
-
/** Commit message's body */
|
1413
|
-
const char *body;
|
1414
|
-
|
1415
|
-
/** Author of the change */
|
1416
|
-
const git_signature *author;
|
1417
|
-
} git_diff_format_email_options;
|
1418
|
-
|
1419
|
-
#define GIT_DIFF_FORMAT_EMAIL_OPTIONS_VERSION 1
|
1420
|
-
#define GIT_DIFF_FORMAT_EMAIL_OPTIONS_INIT {GIT_DIFF_FORMAT_EMAIL_OPTIONS_VERSION, 0, 1, 1, NULL, NULL, NULL, NULL}
|
1421
|
-
|
1422
|
-
/**
|
1423
|
-
* Create an e-mail ready patch from a diff.
|
1424
|
-
*
|
1425
|
-
* @param out buffer to store the e-mail patch in
|
1426
|
-
* @param diff containing the commit
|
1427
|
-
* @param opts structure with options to influence content and formatting.
|
1428
|
-
* @return 0 or an error code
|
1429
|
-
*/
|
1430
|
-
GIT_EXTERN(int) git_diff_format_email(
|
1431
|
-
git_buf *out,
|
1432
|
-
git_diff *diff,
|
1433
|
-
const git_diff_format_email_options *opts);
|
1434
|
-
|
1435
|
-
/**
|
1436
|
-
* Create an e-mail ready patch for a commit.
|
1437
|
-
*
|
1438
|
-
* Does not support creating patches for merge commits (yet).
|
1439
|
-
*
|
1440
|
-
* @param out buffer to store the e-mail patch in
|
1441
|
-
* @param repo containing the commit
|
1442
|
-
* @param commit pointer to up commit
|
1443
|
-
* @param patch_no patch number of the commit
|
1444
|
-
* @param total_patches total number of patches in the patch set
|
1445
|
-
* @param flags determines the formatting of the e-mail
|
1446
|
-
* @param diff_opts structure with options to influence diff or NULL for defaults.
|
1447
|
-
* @return 0 or an error code
|
1448
|
-
*/
|
1449
|
-
GIT_EXTERN(int) git_diff_commit_as_email(
|
1450
|
-
git_buf *out,
|
1451
|
-
git_repository *repo,
|
1452
|
-
git_commit *commit,
|
1453
|
-
size_t patch_no,
|
1454
|
-
size_t total_patches,
|
1455
|
-
uint32_t flags,
|
1456
|
-
const git_diff_options *diff_opts);
|
1457
|
-
|
1458
|
-
/**
|
1459
|
-
* Initialize git_diff_format_email_options structure
|
1460
|
-
*
|
1461
|
-
* Initializes a `git_diff_format_email_options` with default values. Equivalent
|
1462
|
-
* to creating an instance with GIT_DIFF_FORMAT_EMAIL_OPTIONS_INIT.
|
1463
|
-
*
|
1464
|
-
* @param opts The `git_blame_options` struct to initialize.
|
1465
|
-
* @param version The struct version; pass `GIT_DIFF_FORMAT_EMAIL_OPTIONS_VERSION`.
|
1466
|
-
* @return Zero on success; -1 on failure.
|
1467
|
-
*/
|
1468
|
-
GIT_EXTERN(int) git_diff_format_email_options_init(
|
1469
|
-
git_diff_format_email_options *opts,
|
1470
|
-
unsigned int version);
|
1471
|
-
|
1472
1378
|
/**
|
1473
1379
|
* Patch ID options structure
|
1474
1380
|
*
|
@@ -0,0 +1,127 @@
|
|
1
|
+
/*
|
2
|
+
* Copyright (C) the libgit2 contributors. All rights reserved.
|
3
|
+
*
|
4
|
+
* This file is part of libgit2, distributed under the GNU GPL v2 with
|
5
|
+
* a Linking Exception. For full terms see the included COPYING file.
|
6
|
+
*/
|
7
|
+
#ifndef INCLUDE_git_email_h__
|
8
|
+
#define INCLUDE_git_email_h__
|
9
|
+
|
10
|
+
#include "common.h"
|
11
|
+
|
12
|
+
/**
|
13
|
+
* @file git2/email.h
|
14
|
+
* @brief Git email formatting and application routines.
|
15
|
+
* @ingroup Git
|
16
|
+
* @{
|
17
|
+
*/
|
18
|
+
GIT_BEGIN_DECL
|
19
|
+
|
20
|
+
/**
|
21
|
+
* Formatting options for diff e-mail generation
|
22
|
+
*/
|
23
|
+
typedef enum {
|
24
|
+
/** Normal patch, the default */
|
25
|
+
GIT_EMAIL_CREATE_DEFAULT = 0,
|
26
|
+
|
27
|
+
/** Do not include patch numbers in the subject prefix. */
|
28
|
+
GIT_EMAIL_CREATE_OMIT_NUMBERS = (1u << 0),
|
29
|
+
|
30
|
+
/**
|
31
|
+
* Include numbers in the subject prefix even when the
|
32
|
+
* patch is for a single commit (1/1).
|
33
|
+
*/
|
34
|
+
GIT_EMAIL_CREATE_ALWAYS_NUMBER = (1u << 1),
|
35
|
+
|
36
|
+
/** Do not perform rename or similarity detection. */
|
37
|
+
GIT_EMAIL_CREATE_NO_RENAMES = (1u << 2),
|
38
|
+
} git_email_create_flags_t;
|
39
|
+
|
40
|
+
/**
|
41
|
+
* Options for controlling the formatting of the generated e-mail.
|
42
|
+
*/
|
43
|
+
typedef struct {
|
44
|
+
unsigned int version;
|
45
|
+
|
46
|
+
/** see `git_email_create_flags_t` above */
|
47
|
+
uint32_t flags;
|
48
|
+
|
49
|
+
/** Options to use when creating diffs */
|
50
|
+
git_diff_options diff_opts;
|
51
|
+
|
52
|
+
/** Options for finding similarities within diffs */
|
53
|
+
git_diff_find_options diff_find_opts;
|
54
|
+
|
55
|
+
/**
|
56
|
+
* The subject prefix, by default "PATCH". If set to an empty
|
57
|
+
* string ("") then only the patch numbers will be shown in the
|
58
|
+
* prefix. If the subject_prefix is empty and patch numbers
|
59
|
+
* are not being shown, the prefix will be omitted entirely.
|
60
|
+
*/
|
61
|
+
const char *subject_prefix;
|
62
|
+
|
63
|
+
/**
|
64
|
+
* The starting patch number; this cannot be 0. By default,
|
65
|
+
* this is 1.
|
66
|
+
*/
|
67
|
+
size_t start_number;
|
68
|
+
|
69
|
+
/** The "re-roll" number. By default, there is no re-roll. */
|
70
|
+
size_t reroll_number;
|
71
|
+
} git_email_create_options;
|
72
|
+
|
73
|
+
/*
|
74
|
+
* By default, our options include rename detection and binary
|
75
|
+
* diffs to match `git format-patch`.
|
76
|
+
*/
|
77
|
+
#define GIT_EMAIL_CREATE_OPTIONS_VERSION 1
|
78
|
+
#define GIT_EMAIL_CREATE_OPTIONS_INIT \
|
79
|
+
{ \
|
80
|
+
GIT_EMAIL_CREATE_OPTIONS_VERSION, \
|
81
|
+
GIT_EMAIL_CREATE_DEFAULT, \
|
82
|
+
{ GIT_DIFF_OPTIONS_VERSION, GIT_DIFF_SHOW_BINARY, GIT_SUBMODULE_IGNORE_UNSPECIFIED, {NULL,0}, NULL, NULL, NULL, 3 }, \
|
83
|
+
GIT_DIFF_FIND_OPTIONS_INIT \
|
84
|
+
}
|
85
|
+
|
86
|
+
/**
|
87
|
+
* Create a diff for a commit in mbox format for sending via email.
|
88
|
+
*
|
89
|
+
* @param out buffer to store the e-mail patch in
|
90
|
+
* @param diff the changes to include in the email
|
91
|
+
* @param patch_idx the patch index
|
92
|
+
* @param patch_count the total number of patches that will be included
|
93
|
+
* @param commit_id the commit id for this change
|
94
|
+
* @param summary the commit message for this change
|
95
|
+
* @param body optional text to include above the diffstat
|
96
|
+
* @param author the person who authored this commit
|
97
|
+
* @param opts email creation options
|
98
|
+
*/
|
99
|
+
GIT_EXTERN(int) git_email_create_from_diff(
|
100
|
+
git_buf *out,
|
101
|
+
git_diff *diff,
|
102
|
+
size_t patch_idx,
|
103
|
+
size_t patch_count,
|
104
|
+
const git_oid *commit_id,
|
105
|
+
const char *summary,
|
106
|
+
const char *body,
|
107
|
+
const git_signature *author,
|
108
|
+
const git_email_create_options *opts);
|
109
|
+
|
110
|
+
/**
|
111
|
+
* Create a diff for a commit in mbox format for sending via email.
|
112
|
+
* The commit must not be a merge commit.
|
113
|
+
*
|
114
|
+
* @param out buffer to store the e-mail patch in
|
115
|
+
* @param commit commit to create a patch for
|
116
|
+
* @param opts email creation options
|
117
|
+
*/
|
118
|
+
GIT_EXTERN(int) git_email_create_from_commit(
|
119
|
+
git_buf *out,
|
120
|
+
git_commit *commit,
|
121
|
+
const git_email_create_options *opts);
|
122
|
+
|
123
|
+
GIT_END_DECL
|
124
|
+
|
125
|
+
/** @} */
|
126
|
+
|
127
|
+
#endif
|
@@ -66,11 +66,17 @@ typedef struct {
|
|
66
66
|
/** See `git_filter_flag_t` above */
|
67
67
|
uint32_t flags;
|
68
68
|
|
69
|
+
#ifdef GIT_DEPRECATE_HARD
|
70
|
+
void *reserved;
|
71
|
+
#else
|
72
|
+
git_oid *commit_id;
|
73
|
+
#endif
|
74
|
+
|
69
75
|
/**
|
70
76
|
* The commit to load attributes from, when
|
71
77
|
* `GIT_FILTER_ATTRIBUTES_FROM_COMMIT` is specified.
|
72
78
|
*/
|
73
|
-
git_oid
|
79
|
+
git_oid attr_commit_id;
|
74
80
|
} git_filter_options;
|
75
81
|
|
76
82
|
#define GIT_FILTER_OPTIONS_VERSION 1
|
@@ -19,19 +19,16 @@ typedef struct git_oidarray {
|
|
19
19
|
} git_oidarray;
|
20
20
|
|
21
21
|
/**
|
22
|
-
* Free the
|
23
|
-
*
|
24
|
-
*
|
25
|
-
* objects where the array is allocated by the library. Not doing so,
|
26
|
-
* will result in a memory leak.
|
22
|
+
* Free the object IDs contained in an oid_array. This method should
|
23
|
+
* be called on `git_oidarray` objects that were provided by the
|
24
|
+
* library. Not doing so will result in a memory leak.
|
27
25
|
*
|
28
26
|
* This does not free the `git_oidarray` itself, since the library will
|
29
|
-
* never allocate that object directly itself
|
30
|
-
* inside another struct or created on the stack).
|
27
|
+
* never allocate that object directly itself.
|
31
28
|
*
|
32
29
|
* @param array git_oidarray from which to free oid data
|
33
30
|
*/
|
34
|
-
GIT_EXTERN(void)
|
31
|
+
GIT_EXTERN(void) git_oidarray_dispose(git_oidarray *array);
|
35
32
|
|
36
33
|
/** @} */
|
37
34
|
GIT_END_DECL
|
@@ -243,7 +243,7 @@ GIT_EXTERN(const char *) git_remote_pushurl(const git_remote *remote);
|
|
243
243
|
* @param url the url to set
|
244
244
|
* @return 0 or an error value
|
245
245
|
*/
|
246
|
-
GIT_EXTERN(int) git_remote_set_url(git_repository *repo, const char *remote, const char*
|
246
|
+
GIT_EXTERN(int) git_remote_set_url(git_repository *repo, const char *remote, const char *url);
|
247
247
|
|
248
248
|
/**
|
249
249
|
* Set the remote's url for pushing in the configuration.
|
@@ -257,7 +257,7 @@ GIT_EXTERN(int) git_remote_set_url(git_repository *repo, const char *remote, con
|
|
257
257
|
* @param url the url to set
|
258
258
|
* @return 0, or an error code
|
259
259
|
*/
|
260
|
-
GIT_EXTERN(int) git_remote_set_pushurl(git_repository *repo, const char *remote, const char*
|
260
|
+
GIT_EXTERN(int) git_remote_set_pushurl(git_repository *repo, const char *remote, const char *url);
|
261
261
|
|
262
262
|
/**
|
263
263
|
* Set the url for this particular url instance. The URL in the
|
@@ -451,7 +451,7 @@ typedef int GIT_CALLBACK(git_push_transfer_progress_cb)(
|
|
451
451
|
unsigned int current,
|
452
452
|
unsigned int total,
|
453
453
|
size_t bytes,
|
454
|
-
void*
|
454
|
+
void *payload);
|
455
455
|
|
456
456
|
/**
|
457
457
|
* Represents an update which will be performed on the remote during push
|
@@ -971,7 +971,7 @@ GIT_EXTERN(int) git_remote_rename(
|
|
971
971
|
* @param remote_name name to be checked.
|
972
972
|
* @return 0 on success or an error code
|
973
973
|
*/
|
974
|
-
int git_remote_name_is_valid(int *valid, const char *remote_name);
|
974
|
+
GIT_EXTERN(int) git_remote_name_is_valid(int *valid, const char *remote_name);
|
975
975
|
|
976
976
|
/**
|
977
977
|
* Delete an existing persisted remote.
|
@@ -762,13 +762,15 @@ GIT_EXTERN(int) git_repository_mergehead_foreach(
|
|
762
762
|
*
|
763
763
|
* @param out Output value of calculated SHA
|
764
764
|
* @param repo Repository pointer
|
765
|
-
* @param path Path to file on disk whose contents should be hashed.
|
766
|
-
*
|
765
|
+
* @param path Path to file on disk whose contents should be hashed. This
|
766
|
+
* may be an absolute path or a relative path, in which case it
|
767
|
+
* will be treated as a path within the working directory.
|
767
768
|
* @param type The object type to hash as (e.g. GIT_OBJECT_BLOB)
|
768
769
|
* @param as_path The path to use to look up filtering rules. If this is
|
769
|
-
*
|
770
|
-
*
|
771
|
-
*
|
770
|
+
* an empty string then no filters will be applied when
|
771
|
+
* calculating the hash. If this is `NULL` and the `path`
|
772
|
+
* parameter is a file within the repository's working
|
773
|
+
* directory, then the `path` will be used.
|
772
774
|
* @return 0 on success, or an error code
|
773
775
|
*/
|
774
776
|
GIT_EXTERN(int) git_repository_hashfile(
|
@@ -797,8 +799,8 @@ GIT_EXTERN(int) git_repository_hashfile(
|
|
797
799
|
* @return 0 on success, or an error code
|
798
800
|
*/
|
799
801
|
GIT_EXTERN(int) git_repository_set_head(
|
800
|
-
git_repository*
|
801
|
-
const char*
|
802
|
+
git_repository *repo,
|
803
|
+
const char *refname);
|
802
804
|
|
803
805
|
/**
|
804
806
|
* Make the repository HEAD directly point to the Commit.
|
@@ -817,8 +819,8 @@ GIT_EXTERN(int) git_repository_set_head(
|
|
817
819
|
* @return 0 on success, or an error code
|
818
820
|
*/
|
819
821
|
GIT_EXTERN(int) git_repository_set_head_detached(
|
820
|
-
git_repository*
|
821
|
-
const git_oid*
|
822
|
+
git_repository *repo,
|
823
|
+
const git_oid *commitish);
|
822
824
|
|
823
825
|
/**
|
824
826
|
* Make the repository HEAD directly point to the Commit.
|
@@ -854,7 +856,7 @@ GIT_EXTERN(int) git_repository_set_head_detached_from_annotated(
|
|
854
856
|
* branch or an error code
|
855
857
|
*/
|
856
858
|
GIT_EXTERN(int) git_repository_detach_head(
|
857
|
-
git_repository*
|
859
|
+
git_repository *repo);
|
858
860
|
|
859
861
|
/**
|
860
862
|
* Repository state
|
@@ -29,9 +29,7 @@
|
|
29
29
|
//
|
30
30
|
///////////////////////////////////////////////////////////////////////////////
|
31
31
|
|
32
|
-
#
|
33
|
-
#error "Use this header only with Microsoft Visual C++ compilers!"
|
34
|
-
#endif // _MSC_VER ]
|
32
|
+
#ifdef _MSC_VER // [
|
35
33
|
|
36
34
|
#ifndef _MSC_STDINT_H_ // [
|
37
35
|
#define _MSC_STDINT_H_
|
@@ -245,3 +243,5 @@ typedef uint64_t uintmax_t;
|
|
245
243
|
|
246
244
|
|
247
245
|
#endif // _MSC_STDINT_H_ ]
|
246
|
+
|
247
|
+
#endif // _MSC_VER ]
|