pj-nodegit 0.18.4 → 0.18.5

Sign up to get free protection for your applications and to get access to all the features.
Files changed (49) hide show
  1. package/lib/README.md +3 -0
  2. package/lib/attr.js +20 -0
  3. package/lib/blame.js +20 -0
  4. package/lib/blob.js +73 -0
  5. package/lib/branch.js +19 -0
  6. package/lib/buf.js +11 -0
  7. package/lib/checkout.js +51 -0
  8. package/lib/cherrypick.js +73 -0
  9. package/lib/clone.js +33 -0
  10. package/lib/commit.js +437 -0
  11. package/lib/config.js +25 -0
  12. package/lib/convenient_hunks.js +61 -0
  13. package/lib/convenient_patch.js +131 -0
  14. package/lib/credential.js +33 -0
  15. package/lib/diff.js +113 -0
  16. package/lib/diff_file.js +38 -0
  17. package/lib/diff_line.js +32 -0
  18. package/lib/enums.js +689 -0
  19. package/lib/error.js +17 -0
  20. package/lib/filter_registry.js +25 -0
  21. package/lib/index.js +103 -0
  22. package/lib/libgit2.js +6 -0
  23. package/lib/merge.js +72 -0
  24. package/lib/nodegit.js +1333 -0
  25. package/lib/note.js +17 -0
  26. package/lib/object.js +45 -0
  27. package/lib/odb_object.js +9 -0
  28. package/lib/oid.js +23 -0
  29. package/lib/rebase.js +142 -0
  30. package/lib/reference.js +213 -0
  31. package/lib/remote.js +270 -0
  32. package/lib/repository.js +1982 -0
  33. package/lib/reset.js +76 -0
  34. package/lib/revert.js +77 -0
  35. package/lib/revwalk.js +142 -0
  36. package/lib/signature.js +38 -0
  37. package/lib/stash.js +62 -0
  38. package/lib/status.js +18 -0
  39. package/lib/status_file.js +106 -0
  40. package/lib/status_list.js +12 -0
  41. package/lib/submodule.js +51 -0
  42. package/lib/tag.js +135 -0
  43. package/lib/tree.js +175 -0
  44. package/lib/tree_entry.js +99 -0
  45. package/lib/utils/lookup_wrapper.js +39 -0
  46. package/lib/utils/normalize_fetch_options.js +43 -0
  47. package/lib/utils/normalize_options.js +29 -0
  48. package/lib/utils/shallow_clone.js +14 -0
  49. package/package.json +1 -1
package/lib/index.js ADDED
@@ -0,0 +1,103 @@
1
+ var util = require("util");
2
+ var NodeGit = require("../");
3
+
4
+ var Index = NodeGit.Index;
5
+
6
+ var _addAll = Index.prototype.addAll;
7
+ var _removeAll = Index.prototype.removeAll;
8
+ var _updateAll = Index.prototype.updateAll;
9
+
10
+ Index.prototype.addAll = function(pathspec, flags, matchedCallback) {
11
+ return _addAll.call(this, pathspec || "*", flags, matchedCallback, null);
12
+ };
13
+
14
+ /**
15
+ * Return an array of the entries in this index.
16
+ * @return {Array<IndexEntry>} an array of IndexEntrys
17
+ */
18
+ Index.prototype.entries = function() {
19
+ var size = this.entryCount();
20
+ var result = [];
21
+
22
+ for (var i = 0; i < size; i++) {
23
+ result.push(this.getByIndex(i));
24
+ }
25
+
26
+ return result;
27
+ };
28
+
29
+ Index.prototype.removeAll = function(pathspec, matchedCallback) {
30
+ return _removeAll.call(this, pathspec || "*", matchedCallback, null);
31
+ };
32
+
33
+ Index.prototype.updateAll = function(pathspec, matchedCallback) {
34
+ return _updateAll.call(this, pathspec || "*", matchedCallback, null);
35
+ };
36
+
37
+ // Deprecated -----------------------------------------------------------------
38
+
39
+ NodeGit.Index.CAP = {};
40
+ Object.keys(NodeGit.Index.CAPABILITY).forEach((key) => {
41
+ Object.defineProperty(NodeGit.Index.CAP, key, {
42
+ get: util.deprecate(
43
+ () => NodeGit.Index.CAPABILITY[key],
44
+ `Use NodeGit.Index.CAPABILITY.${key} instead of ` +
45
+ `NodeGit.Index.CAP.${key}.`
46
+ )
47
+ });
48
+ });
49
+
50
+ NodeGit.Enums.INDXENTRY_FLAG = {};
51
+ Object.defineProperty(NodeGit.Enums.INDXENTRY_FLAG, "IDXENTRY_EXTENDED", {
52
+ get: util.deprecate(
53
+ () => NodeGit.Index.ENTRY_FLAG.ENTRY_EXTENDED,
54
+ "Use NodeGit.Index.ENTRY_FLAG.ENTRY_EXTENDED instead of " +
55
+ "NodeGit.Enums.INDXENTRY_FLAG.IDXENTRY_EXTENDED."
56
+ )
57
+ });
58
+ Object.defineProperty(NodeGit.Enums.INDXENTRY_FLAG, "IDXENTRY_VALID", {
59
+ get: util.deprecate(
60
+ () => NodeGit.Index.ENTRY_FLAG.ENTRY_VALID,
61
+ "Use NodeGit.Index.ENTRY_FLAG.ENTRY_VALID instead of " +
62
+ "NodeGit.Enums.INDXENTRY_FLAG.IDXENTRY_VALID."
63
+ )
64
+ });
65
+
66
+ NodeGit.Enums.IDXENTRY_EXTENDED_FLAG = {};
67
+ var EXTENDED_FLAGS_MAP = {
68
+ IDXENTRY_INTENT_TO_ADD: "ENTRY_INTENT_TO_ADD",
69
+ IDXENTRY_SKIP_WORKTREE: "ENTRY_SKIP_WORKTREE",
70
+ S: "S",
71
+ IDXENTRY_UPTODATE: "ENTRY_UPTODATE"
72
+ };
73
+ Object.keys(EXTENDED_FLAGS_MAP).forEach((key) => {
74
+ const newKey = EXTENDED_FLAGS_MAP[key];
75
+ Object.defineProperty(NodeGit.Enums.IDXENTRY_EXTENDED_FLAG, key, {
76
+ get: util.deprecate(
77
+ () => NodeGit.Index.ENTRY_EXTENDED_FLAG[newKey],
78
+ `Use NodeGit.Index.ENTRY_EXTENDED_FLAG.${newKey} instead of ` +
79
+ `NodeGit.Enums.IDXENTRY_EXTENDED_FLAG.${key}.`
80
+ )
81
+ });
82
+ });
83
+
84
+ var DEPRECATED_EXTENDED_FLAGS = {
85
+ IDXENTRY_EXTENDED2: 32768,
86
+ IDXENTRY_UPDATE: 1,
87
+ IDXENTRY_REMOVE: 2,
88
+ IDXENTRY_ADDED: 8,
89
+ IDXENTRY_HASHED: 16,
90
+ IDXENTRY_UNHASHED: 32,
91
+ IDXENTRY_WT_REMOVE: 64,
92
+ IDXENTRY_CONFLICTED: 128,
93
+ IDXENTRY_UNPACKED: 256,
94
+ IDXENTRY_NEW_SKIP_WORKTREE: 512,
95
+ };
96
+ Object.keys(DEPRECATED_EXTENDED_FLAGS).forEach((key) => {
97
+ Object.defineProperty(NodeGit.Enums.IDXENTRY_EXTENDED_FLAG, key, {
98
+ get: util.deprecate(
99
+ () => DEPRECATED_EXTENDED_FLAGS[key],
100
+ "LibGit2 has removed this flag for public usage."
101
+ )
102
+ });
103
+ });
package/lib/libgit2.js ADDED
@@ -0,0 +1,6 @@
1
+ var NodeGit = require("../");
2
+
3
+ var Libgit2 = NodeGit.Libgit2;
4
+
5
+ Libgit2.OPT.SET_WINDOWS_LONGPATHS = 29;
6
+ Libgit2.OPT.GET_WINDOWS_LONGPATHS = 30;
package/lib/merge.js ADDED
@@ -0,0 +1,72 @@
1
+ var NodeGit = require("../");
2
+ var normalizeOptions = NodeGit.Utils.normalizeOptions;
3
+
4
+ var Merge = NodeGit.Merge;
5
+ var _commits = Merge.commits;
6
+ var _merge = Merge.merge;
7
+ var _file = Merge.file;
8
+
9
+ /**
10
+ * Merge two files as they exist in the in-memory data structures, using
11
+ * the given common ancestor as the baseline. (git_merge_file)
12
+ *
13
+ * @param {MergeFileInput} ancestor The contents of the ancestor file
14
+ * @param {MergeFileInput} ours The contents of the file in "our" side
15
+ * @param {MergeFileInput} theirs The contents of the file in "theirs" side
16
+ * @param {MergeFileOptions} [options] The merge file options
17
+ * or `NULL` for defaults
18
+ */
19
+ Merge.file = function(ancestor, ours, theirs, options) {
20
+ ancestor = normalizeOptions(ancestor, NodeGit.MergeFileInput);
21
+ ours = normalizeOptions(ours, NodeGit.MergeFileInput);
22
+ theirs = normalizeOptions(theirs, NodeGit.MergeFileInput);
23
+ options = normalizeOptions(options || {}, NodeGit.MergeFileOptions);
24
+ return _file.call(this, ancestor, ours, theirs, options);
25
+ };
26
+
27
+ /**
28
+ * Merge 2 commits together and create an new index that can
29
+ * be used to create a merge commit.
30
+ *
31
+ * @param {Repository} repo Repository that contains the given commits
32
+ * @param {Commit} ourCommit The commit that reflects the destination tree
33
+ * @param {Commit} theirCommit The commit to merge into ourCommit
34
+ * @param {MergeOptions} [options] The merge tree options (null for default)
35
+ */
36
+ Merge.commits = function(repo, ourCommit, theirCommit, options) {
37
+ options = normalizeOptions(options, NodeGit.MergeOptions);
38
+
39
+ return Promise.all([
40
+ repo.getCommit(ourCommit),
41
+ repo.getCommit(theirCommit)
42
+ ]).then(function(commits) {
43
+ return _commits.call(this, repo, commits[0], commits[1], options);
44
+ });
45
+ };
46
+
47
+ /**
48
+ * Merge a commit into HEAD and writes the results to the working directory.
49
+ *
50
+ * @param {Repository} repo Repository that contains the given commits
51
+ * @param {AnnotatedCommit} theirHead The annotated commit to merge into HEAD
52
+ * @param {MergeOptions} [mergeOpts] The merge tree options (null for default)
53
+ * @param {CheckoutOptions} [checkoutOpts] The checkout options
54
+ * (null for default)
55
+ */
56
+ Merge.merge = function(repo, theirHead, mergeOpts, checkoutOpts) {
57
+ mergeOpts = normalizeOptions(mergeOpts || {}, NodeGit.MergeOptions);
58
+ checkoutOpts = normalizeOptions(checkoutOpts || {}, NodeGit.CheckoutOptions);
59
+
60
+ // Even though git_merge takes an array of annotated_commits, it expects
61
+ // exactly one to have been passed in or it will throw an error... ¯\_(ツ)_/¯
62
+ var theirHeads = [theirHead];
63
+
64
+ return _merge.call(
65
+ this,
66
+ repo,
67
+ theirHeads,
68
+ theirHeads.length,
69
+ mergeOpts,
70
+ checkoutOpts
71
+ );
72
+ };