<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ThinkChat2.0新版上線,更智能更精彩,支持會話、畫圖、視頻、閱讀、搜索等,送10W Token,即刻開啟你的AI之旅 廣告
                # Migrating from CVS > 原文:[https://docs.gitlab.com/ee/user/project/import/cvs.html](https://docs.gitlab.com/ee/user/project/import/cvs.html) * [CVS vs Git](#cvs-vs-git) * [Why migrate](#why-migrate) * [How to migrate](#how-to-migrate) # Migrating from CVS[](#migrating-from-cvs "Permalink") [CVS](https://savannah.nongnu.org/projects/cvs)是類似于[SVN](svn.html)的舊式集中版本控制系統. ## CVS vs Git[](#cvs-vs-git "Permalink") 以下列表說明了 CVS 和 Git 之間的主要區別: * **Git 已分發.** 另一方面,CVS 使用客戶端-服務器體系結構進行集中管理. 這意味著 Git 具有更靈活的工作流程,因為您的工作區是整個存儲庫的副本. 例如,由于不必與遠程服務器進行通信,因此這減少了切換分支或合并時的開銷. * **原子操作.** 在 Git 中,所有操作都是[原子](https://en.wikipedia.org/wiki/Atomic_commit)操作,它們要么全部成功,要么失敗而沒有任何更改. 在 CVS 中,提交(和其他操作)不是原子的. 如果對存儲庫的操作在中間中斷,則存儲庫可能處于不一致狀態. * **存放方法.** CVS 中的更改是按文件(更改集)進行的,而在 Git 中,已提交的文件將全部存儲(快照). 這意味著在 Git 中還原或撤消整個更改非常容易. * **修訂版 ID.** 在 CVS 中,更改是針對每個文件的,修訂 ID 由版本號表示,例如`1.4`反映了給定文件已更改了多少次. 在 Git 中,整個項目的每個版本(每次提交)的唯一名稱都由 SHA-1 給出. * **合并跟蹤.** Git 使用一種先合并后提交的方法,而不是像 CVS 那樣先合并后提交(或先更新再提交). 如果在準備創建新提交(新修訂版)時有人在同一個分支上創建了一個新提交并推送到中央存儲庫,則 CVS 將強制您首先更新工作目錄并解決沖突,然后再允許您提交. Git 并非如此. 您首先提交,將狀態保存在版本控制中,然后合并其他開發人員的更改. 您還可以要求其他開發人員進行合并并自己解決任何沖突. * **簽名提交.** Git 支持使用 GPG 對提交進行簽名,以提高安全性并驗證提交確實來自其原始作者. GitLab 可以[與 GPG 集成,](../repository/gpg_signed_commits/index.html)并顯示簽名提交是否得到正確驗證. *上面的一些內容摘自這個很棒的[Stack Overflow 帖子](https://stackoverflow.com/a/824241/974710) . 有關差異的更完整列表,請查閱 Wikipedia 上有關[比較不同版本控制軟件的文章](https://en.wikipedia.org/wiki/Comparison_of_version_control_software) .* ## Why migrate[](#why-migrate "Permalink") CVS 較舊,自 2008 年以來沒有新版本發布.Git 提供了更多可使用的工具( `git bisect`之一),這使工作流程更加高效. 遷移到 Git / GitLab 有: * **學習曲線更短** ,Git 具有龐大的社區和大量的入門指南(請參閱我們的[Git 主題](../../../topics/git/index.html) ). * **與現代工具集成** ,遷移到 Git 和 GitLab,您可以擁有一個開源的端到端軟件開發平臺,該平臺具有內置的版本控制,問題跟蹤,代碼審查,CI / CD 等. * **支持許多網絡協議** . Git 支持 SSH,HTTP / HTTPS 和 rsync 等,而 CVS 僅支持 SSH 及其自身的不安全的 pserver 協議,無需用戶身份驗證. ## How to migrate[](#how-to-migrate "Permalink") 以下是一些鏈接,可幫助您開始進行遷移: * [Migrate using the `cvs-fast-export` tool](http://www.catb.org/~esr/reposurgeon/dvcs-migration-guide.html) ([*source code*](https://gitlab.com/esr/cvs-fast-export)) * [Stack Overflow post on importing the CVS repo](https://stackoverflow.com/a/11490134/974710) * [Convert a CVS repository to Git](https://www.techrepublic.com/blog/linux-and-open-source/convert-cvs-repositories-to-git/) * [Man page of the `git-cvsimport` tool](https://mirrors.edge.kernel.org/pub/software/scm/git/docs/git-cvsimport.html)
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看