public static void UpdateTag(Tag tag, TagData tagData) { Verify.Argument.IsNotNull(tag, "tag"); Verify.Argument.IsNotNull(tagData, "tagData"); if(tag.Revision.Hash != tagData.SHA1) { var repo = tag.Repository; Revision revision; lock(repo.Revisions.SyncRoot) { revision = repo.Revisions.GetOrCreateRevision(tagData.SHA1); } tag.Pointer = revision; } tag.TagType = tagData.TagType; }
public static Tag CreateTag(Repository repository, TagData tagData) { Verify.Argument.IsNotNull(repository, "repository"); Verify.Argument.IsNotNull(tagData, "tagData"); Revision revision; lock(repository.Revisions.SyncRoot) { revision = repository.Revisions.GetOrCreateRevision(tagData.SHA1); } return new Tag(repository, tagData.Name, revision, tagData.TagType); }