mirror of
https://github.com/node-red/node-red.git
synced 2023-10-10 13:36:53 +02:00
Fix project pull with authentication
This commit is contained in:
parent
5c88888e02
commit
e5ff25b92d
@ -297,7 +297,7 @@ module.exports = {
|
||||
});
|
||||
|
||||
// Pull remote commits
|
||||
app.get("/:id/pull/?*", function(req,res) {
|
||||
app.post("/:id/pull/?*", function(req,res) {
|
||||
var projectName = req.params.id;
|
||||
var remoteBranchName = req.params[0];
|
||||
var setRemote = req.query.u;
|
||||
|
@ -296,9 +296,10 @@ Project.prototype.push = function (remoteBranchName,setRemote) {
|
||||
};
|
||||
|
||||
Project.prototype.pull = function (remoteBranchName,setRemote) {
|
||||
var self = this;
|
||||
if (setRemote) {
|
||||
return gitTools.setUpstream(this.path, remoteBranchName).then(function() {
|
||||
return gitTools.pull(this.path, null, getAuth(this.name,'origin'));
|
||||
return gitTools.pull(self.path, null, getAuth(self.name,'origin'));
|
||||
})
|
||||
} else {
|
||||
return gitTools.pull(this.path, remoteBranchName, getAuth(this.name,'origin'));
|
||||
|
@ -322,14 +322,20 @@ module.exports = {
|
||||
var args = ["branch","--set-upstream-to",remoteBranch];
|
||||
return runGitCommand(args,cwd);
|
||||
},
|
||||
pull: function(cwd,remoteBranch) {
|
||||
pull: function(cwd,remoteBranch,auth) {
|
||||
var args = ["pull"];
|
||||
var m = /^(.*?)\/(.*)$/.exec(remoteBranch);
|
||||
if (m) {
|
||||
args.push(m[1]);
|
||||
args.push(m[2])
|
||||
}
|
||||
return runGitCommand(args,cwd).otherwise(function(err) {
|
||||
var promise;
|
||||
if (auth) {
|
||||
promise = runGitCommandWithAuth(args,cwd,auth);
|
||||
} else {
|
||||
promise = runGitCommand(args,cwd)
|
||||
}
|
||||
return promise.catch(function(err) {
|
||||
if (/CONFLICT/.test(err.stdout)) {
|
||||
var e = new Error("NLS: pull failed - merge conflict");
|
||||
e.code = "git_pull_merge_conflict";
|
||||
|
Loading…
Reference in New Issue
Block a user