sri*_*ant 5 git node.js git-commit nodegit
我是nodegit的新手。我想查看最新的10次回购提交,文件更改以及相应提交中引入的更改。
我有最近提交的10个列表,但是我一直在获取提交细节。
这是我正在使用的代码
var nodegit = require('nodegit');
var repoPath = "some_repo_path";
//open branch
nodegit.Repository.open(repoPath).then(function(repo){
//get branch
return repo.getCurrentBranch().then(function(ref) {
console.log("On " + ref.shorthand() + " (" + ref.target() + ")");
//get commit
return repo.getBranchCommit(ref.shorthand());
}).then(function(commit) {
//get commit history
var history = commit.history();
p = new Promise(function(resolve, reject) {
history.on("end", resolve);
history.on("error", reject);
});
history.start();
return p;
}).then(function(commits){
//iterate through last 10 commits
for (var i = 0; i < 10; i++) {
var sha = commits[i].sha().substr(0,7),
msg = commits[i].message().split('\n')[0];
console.log(sha + " " + msg + " " + commits[i].author() + " " + commits[i].time());
//get details for this commit
//number of lines added/removed
//list of files changed/deleted
//for each changed file number of lines added/removed
//for each changes file actual lines added/removed
}
});
Run Code Online (Sandbox Code Playgroud)
});
| 归档时间: |
|
| 查看次数: |
264 次 |
| 最近记录: |