我正在使用 jgit api 并使用 GitServlet 实现自己的git存储库。
现在receivepack.setPostReceiveHook
我在内部做了一些操作。如果推送失败仍然会发生什么事情仍在推动笔记。我需要确保推送错误,我也不应该推笔记。
这是我的示例receivepack.setPostReceiveHoo代码,
receivepack.setPostReceiveHook(new PostReceiveHook() {
public void onPostReceive(ReceivePack rp, Collection<ReceiveCommand> commands) {
try {
System.out.println("Inside setPostReceiveHook ========>> ");
if (_resName.contains("smp") || _resName.contains("cfg")) {
System.out.println("Inside setPostReceiveHook with res_nm : ========>> " + _resName);
System.out.println("pushing to all nodes as this is master");
SMPPushOperation.pushToPeers(rp, db.getDirectory().getAbsolutePath(),
CFG_GIT_REPO_URL);
}
} catch (Exception e) {
receivepack.sendError("Unable to push... ");
}
}
});
return receivepack;
我的推送网址
git push https://sohanb.sys.net:8443/gitcontainer/demo-cfg refs/notes/*
当我查看我的git存储库时,我可以看到正在推送笔记。在上面的代码中,我确实发送了错误消息。
如何避免在推送失败时推送笔记?
请建议