예제 #1
0
        /// <summary>
        /// 대상 브렌치에서 첫 번째 체크인이 일어나기 직전 상태의 메인 브렌치 파일들을 복사합니다.
        /// </summary>
        private void CopyMainBranchBeforeFirstBranchCheckin(string branchName)
        {
            ClearCase main   = new ClearCase(CreateCCInfo("main"));
            ClearCase branch = new ClearCase(CreateCCInfo(branchName));

            DateTime firstCheckinDate = branch.GetAllVersionsInBranch().Min(version => version.CreatedDate);

            main.SetMainCS(firstCheckinDate.AddSeconds(-1));

            CopyDirectory(VobPath, RepoPath);
        }
예제 #2
0
        public void Clone()
        {
            Git       git = new Git(CreateGitInfo());
            ClearCase cc  = new ClearCase(CreateCCInfo(BranchName));

            git.Init();

            // move to git repository.
            CWD = git.RepoPath;

            WriteGiccConfig();

            CopyMainBranchBeforeFirstBranchCheckin(BranchName);
            git.AddCommit("gicc initialize", cc.GetAllVersionsInBranch().Min(version => version.CreatedDate).AddSeconds(-1));
            git.TagPull();

            Pull();
        }