public void RefNameResolution() { var repo = new Repository(db); var master = new Ref(repo, "refs/heads/master"); var previous = new Ref(repo,"refs/heads/master^"); Assert.AreNotEqual(master.Target.Hash, previous.Target.Hash); Assert.AreEqual((master.Target as Commit).Parent.Hash, previous.Target.Hash); }
public Branch(Ref @ref) : base(@ref._repo, @ref.Name) { }
/// <summary> /// Overwrites this ref by forwarding it to the given ref. /// </summary> /// <param name="other">The ref this object shall reference.</param> public void Update(Ref other) { var db = _repo._internal_repo; var updateRef = db.UpdateRef(this.Name); updateRef.NewObjectId = other.Target._id; updateRef.IsForceUpdate = true; updateRef.Update(); db.WriteSymref(Name, other.Name); }