mirror of
https://gitlab.silvrtree.co.uk/martind2000/nci.git
synced 2025-02-10 19:59:17 +00:00
change separators for git - add support of multiline comments
This commit is contained in:
parent
91f8a68f29
commit
66eca6b4af
@ -15,9 +15,8 @@ inherits(Scm, ParentScm);
|
||||
|
||||
Scm.prototype.defaultRev = 'master';
|
||||
|
||||
// use 2 invisible separators as fields separator
|
||||
Scm.prototype._fieldsSeparator = String.fromCharCode(2063);
|
||||
Scm.prototype._fieldsSeparator += Scm.prototype._fieldsSeparator;
|
||||
Scm.prototype._fieldsSeparator = '\u2063' + '\u2063';
|
||||
Scm.prototype._linesSeparator = '\u2028' + '\u2028';
|
||||
|
||||
Scm.prototype._revTemplate = [
|
||||
'%h', '%cn', '%cd', '%s', '%d'
|
||||
@ -149,15 +148,16 @@ Scm.prototype.getChanges = function(rev1, rev2, callback) {
|
||||
|
||||
self.run({cmd: 'git', args: [
|
||||
'log', rev1 ? rev1 + '..' + rev2 : rev2,
|
||||
'--pretty=' + self._revTemplate
|
||||
'--pretty=' + self._revTemplate + self._linesSeparator
|
||||
]}, this.slot());
|
||||
},
|
||||
function(err, currentRev, stdout) {
|
||||
// always skip last line - it's empty
|
||||
var rows = stdout.split('\n').slice(0, -1);
|
||||
var rows = stdout.split(self._linesSeparator).slice(0, -1);
|
||||
|
||||
var changes = _(rows).map(function(str) {
|
||||
return self._parseRev(str);
|
||||
// remove line break which git log add between commits
|
||||
return self._parseRev(str.replace(/^\n/, ''));
|
||||
});
|
||||
|
||||
this.pass(currentRev, changes);
|
||||
|
Loading…
Reference in New Issue
Block a user