我尝试使用nodegit重现结帐文件操作,以恢复文件的当前更改。
git checkout -- filename.ext
我的第一次尝试是使用Repository对象中的checkoutRef函数,如下所示:
nodegit.Repository.open(gitRepo)
.then(function (repo) {
repo.checkoutRef('filename.ext',{
checkoutStrategy: nodegit.Checkout.STRATEGY.FORCE
}).then(function (data) {
console.log(data);
});
});
答案 0 :(得分:0)
我认为Reset.default
是您想要的。
答案 1 :(得分:0)
尝试以下代码:;-)
try {
const commit = await repository.getBranchCommit("origin/master");
const tree = await commit.getTree();
const resCheckout = await Checkout.tree(repository, tree, { checkoutStrategy: Checkout.STRATEGY.FORCE, paths: ["YOUR_FILE_PATH"] });
} catch (err) {
console.log(err)
}