Проверка узла и переключение (удаленных) веток
Когда я клонирую репозиторий с помощью git (терминал), а затем делаю проверку в удаленной ветке разработки с помощью nodegit, она работает просто отлично.
Но я столкнулся с проблемой, что, когда я хочу переключиться назад на удаленную главную ветку, с предоставленным примером, я не могу понять это.
Клонирование по SSH
git clone git@mygit.com/projects/myproject.git
Checkout для разработки работает со следующим кодом, но не работает для обратного переключения, потому что основная ветвь уже существует локально.
git.Repository.open(appDir)
.then((repo) => {
return repo.getHeadCommit()
.then((targetCommit) => {
return repo.createBranch(repositoryConfig.branch, targetCommit, false);
})
.then((reference) => {
return repo.checkoutBranch(reference, {});
})
.then(() => {
return repo.getReferenceCommit('refs/remotes/origin/' + repositoryConfig.branch);
})
.then((commit) => {
git.Reset.reset(repo, commit, 3, {});
})
.catch((err) => {
reject(err);
});
})
.then(() => {
resolve('Checking out branch ' + repositoryConfig.branch + ' done');
})
.catch((err) => {
reject(err);
});
Я попробовал это с этим кодом, который сбрасывает мою локальную копию в основную ветку, но не "следует" за ней, потому что подтягивание говорит мне после того, что я X фиксирует и что я должен сделать вытягивание.
git.Repository.open(appDir)
.then((repo) => {
return repo.getBranch('refs/remotes/origin/' + repositoryConfig.branch)
.then((reference) => {
return repo.checkoutBranch(reference, {});
})
.then(() => {
return repo.getReferenceCommit('refs/remotes/origin/' + repositoryConfig.branch);
})
.then((commit) => {
git.Reset.reset(repo, commit, 3, {});
})
.catch((err) => {
reject(err);
});
})
.then(() => {
console.log('Checking out branch ' + repositoryConfig.branch + ' done');
resolve();
})
.catch((err) => {
reject(err);
});
В repositoryConfig.branch
Я установил ветку для включения переключения.
Я не совсем в Git и как он работает с подключением / отключением HEAD и наоборот.
Так что буду признателен за любую помощь.