Пример #1
0
        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;
        }
Пример #2
0
        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);
        }