<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>

                ??碼云GVP開源項目 12k star Uniapp+ElementUI 功能強大 支持多語言、二開方便! 廣告
                知識點 - Git 標簽的作用 - 創建標簽 - 查看標簽 - 推送本地標簽至遠程倉庫 - 刪除標簽 - 簽出標簽 - 對應的提交版本 - GitHub releases 簡介 # 一、Git 標簽的作用 在一個項目中,我們可能需要階段性地發布一個版本,比如 V1.0、V1.0.2、V3.2 Beta 之類的,Git 的標簽可以滿足這個需求。在一個長期大型項目中,可能會有數千個提交版本,我們可能需要對重要的節點性提交打個記號,這時也可以使用 Git 的標簽功能。在一些項目相關的書籍中,我們會看到 “執行 xxx 命令簽出這個版本以查看對應的代碼” ,這也是使用 Git 的標簽功能做到的。本節實驗將詳細講解此功能的具體操作。 **1.1 創建標簽** 前面的課程提到過 GitHub 的 issue 功能,issue 是倉庫擁有者在 GitHub 上手動創建的,倉庫被 Fork 時 issue 不會跟隨。Tags 通常在本地使用 git 命令創建后推送到 GitHub 上,與 issue 相同的一點,它也只存在于項目倉庫內,Fork 或提 PR 都不會帶上它。在多人協作項目中,通常由組長對主倉庫設置 Tags,單人項目自然就是自己說了算。 開始操作。首先,克隆倉庫、配置信息、查看提交版本歷史: ![此處輸入圖片的描述](https://img-blog.csdnimg.cn/20200912143243716.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dhbmd6aGFl,size_16,color_FFFFFF,t_70#pic_center) 重要的一點,我們創建標簽是給具體的某次提交創建的,跟分支無關。創建標簽使用 git tag [標簽名] -m [備注信息] [提交版本號] 這個命令。其中 -m [備注信息] 可以省略不寫,但建議不要省略。[提交版本號] 可以省略,如果是給當前分支最新的提交創建標簽的話。 給當前分支當前版本創建一個標簽: ![此處輸入圖片的描述](https://img-blog.csdnimg.cn/20200912143250585.png#pic_center) 這樣一個本地標簽就創建完成了。 **1.2 查看標簽** 執行 git tag 命令顯示倉庫中的全部標簽列表,執行 git show [標簽名] 查看標簽詳情: ![此處輸入圖片的描述](https://img-blog.csdnimg.cn/20200912143314275.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dhbmd6aGFl,size_16,color_FFFFFF,t_70#pic_center) 前文已提到,標簽是在提交的基礎上創建的,如果倉庫的多個分支中都有這個提交版本,那么這些分支上就有關于這個提交的相同的標簽。 **1.3 刪除本地標簽** 當我們執行 git tag [標簽名] 創建本地標簽后,在倉庫主目錄的 .git/refs/tags 目錄下就會生成一個標簽文件: ![此處輸入圖片的描述](https://img-blog.csdnimg.cn/20200912143336841.png#pic_center) 執行 git tag -d [標簽名] 刪除本地標簽,標簽文件也會被刪除: ![此處輸入圖片的描述](https://img-blog.csdnimg.cn/2020091214334360.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dhbmd6aGFl,size_16,color_FFFFFF,t_70#pic_center) **1.4 將本地標簽推送到遠程倉庫** 首先對兩個提交版本創建對應的標簽: ![此處輸入圖片的描述](https://img-blog.csdnimg.cn/20200912143422369.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dhbmd6aGFl,size_16,color_FFFFFF,t_70#pic_center) 執行 git push origin [標簽名] 推送標簽到遠程倉庫,注意前面的命令都只涉及本地操作不需要聯網,此命令需要聯網: ![此處輸入圖片的描述](https://img-blog.csdnimg.cn/20200912143429339.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dhbmd6aGFl,size_16,color_FFFFFF,t_70#pic_center) 我們到瀏覽器上打開倉庫主目錄,點擊下圖紅色框可以查看 releases 和 tags : ![此處輸入圖片的描述](https://img-blog.csdnimg.cn/20200912143444243.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dhbmd6aGFl,size_16,color_FFFFFF,t_70#pic_center) 點 Tags 按鈕查看標簽: ![此處輸入圖片的描述](https://img-blog.csdnimg.cn/2020091214345218.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dhbmd6aGFl,size_16,color_FFFFFF,t_70#pic_center) 關于 releases 是什么,下文會介紹。 如果你一口氣創建了 6 個標簽,當然啦,這種情況很少發生,可以使用 git push origin --tags 命令將全部本地標簽推送至遠程倉庫: ![此處輸入圖片的描述](https://img-blog.csdnimg.cn/20200912143510218.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dhbmd6aGFl,size_16,color_FFFFFF,t_70#pic_center) 查看遠程倉庫情況: ![此處輸入圖片的描述](https://img-blog.csdnimg.cn/20200912143516434.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dhbmd6aGFl,size_16,color_FFFFFF,t_70#pic_center) **1.5 刪除遠程倉庫標簽** 如果標簽廢棄不用或者寫錯了,可以使用 git push origin :refs/tags/[標簽名] 刪除遠程倉庫的標簽,命令中的標簽名其實也就是文件名: ![此處輸入圖片的描述](https://img-blog.csdnimg.cn/20200912143542990.png#pic_center) 再次查看遠程倉庫: ![此處輸入圖片的描述](https://img-blog.csdnimg.cn/20200912144609805.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dhbmd6aGFl,size_16,color_FFFFFF,t_70#pic_center) 好,刪除成功。以上就是關于 Git 標簽的創建、查看、推送、刪除的操作流程。 查看本地倉庫的標簽列表: ![此處輸入圖片的描述](https://img-blog.csdnimg.cn/20200912144616722.png#pic_center) 咦,001 標簽還在呢?是的,本地標簽需要另外手動刪除,上文已演示。 **1.6 簽出版本** 現在介紹一下關于 “簽出版本” 的操作,我們會見到類似這種說明:“如果你從 GitHub 上克隆了這個程序的倉庫,那么可以在倉庫主目錄下執行 git checkout xxx 簽出程序的這個版本。” 其實簽出版本就是指定某個提交版本創建一個新的分支。 假定當前的 work 倉庫就是一個程序,我們要簽出 001 版本,執行以下步驟即可。 首先執行 git checkout [標簽名] 切換到之前的某個提交版本,然后執行 git checkout -b [新的分支名] 將此提交版本固定到一個新分支上并切換到此分支: ![此處輸入圖片的描述](https://img-blog.csdnimg.cn/20200912144654795.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dhbmd6aGFl,size_16,color_FFFFFF,t_70#pic_center) 這樣就利用標簽完成了提交版本簽出的工作。 # 二、GitHub 的 releases GitHub 的 releases 是 2013 年發布的新功能,旨在協助軟件開發者分發新版本給用戶,關于這個功能這里僅作簡單介紹。 當項目組織宣布發布一個軟件產品的版本,發布過程就是一個將軟件交付給最終用戶的工作流。版本是具有修改日志和二進制文件的一類對象,它們提供了 Git 工作流之外的完整項目歷史,它們也可以從存儲庫的主頁上被訪問。發布版 release 附帶發布說明和下載軟件或源代碼的鏈接。按照許多 Git 項目的約定,發布版本與 Git 的標簽 tag 綁定。您可以使用現有的標簽,或者讓 release 在發布時創建標簽。這就是上面查看 GitHub 倉庫中標簽信息時出現的場景。 標簽是 Git 中的概念,而 releases 則是 Github、碼云等源碼托管商所提供的更高層的概念。Git 本身是沒有 releases 這個概念,只有 tag。兩者之間的關系則是,release 基于 tag,為 tag 添加更豐富的信息,一般是編譯好的文件
                  <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>

                              哎呀哎呀视频在线观看