public override bool Clone() { string dc = null; try { lock (thread_safe_rep) { dc = Repository.Clone(base.cloneUri, base.LocalContainerDirectory); if (CheckLocalCopy()) status = Status.allUpToDate; else { status = Status.cloneFailure; return false; } } } catch(Exception e) { logger.Exception(e, "git clone", "Clone failure at '{0}, msg: {1}", cloneUri, e.Message); status = Status.cloneFailure; return false; } return true; }
private SCM.Status status = Status.none;// this means to determine status by UpdateStatus public override bool Fetch() { if (CheckLocalCopy()) { lock (thread_safe_rep) { using (var repo = new Repository(base.LocalContainerDirectory)) { try { repo.Network.Fetch(repo.Network.Remotes[GetRemoteBranchName(repo)]); CheckoutRemoteBranch(repo); status = Status.allUpToDate; return(true); } catch (Exception e) { status = Status.fetchFailure; logger.Exception(e, "git Fetch", "exception while trying to fetch"); } } } } else { status = Status.cloneRequired; } return(false); }
public override bool Clone() { string dc = null; try { lock (thread_safe_rep) { dc = Repository.Clone(base.cloneUri, base.LocalContainerDirectory); if (CheckLocalCopy()) { status = Status.allUpToDate; } else { status = Status.cloneFailure; return(false); } } } catch (Exception e) { logger.Exception(e, "git clone", "Clone failure at '{0}, msg: {1}", cloneUri, e.Message); status = Status.cloneFailure; return(false); } return(true); }
public override void UpdateStatus() { if (CheckLocalCopy()) { status = Status.fetchRequied; } else { status = Status.cloneRequired; } }
public override bool Fetch() { if (CheckLocalCopy()) { lock (thread_safe_rep) { using (var repo = new Repository(base.LocalContainerDirectory)) { try { repo.Network.Fetch(repo.Network.Remotes[GetRemoteBranchName(repo)]); CheckoutRemoteBranch(repo); status = Status.allUpToDate; return true; } catch (Exception e) { status = Status.fetchFailure; logger.Exception(e, "git Fetch", "exception while trying to fetch"); } } } } else { status = Status.cloneRequired; } return false; }