日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Git、TortoiseGit、GitHub、Gitee、GitLab 安装与入门使用

發(fā)布時間:2024/4/13 编程问答 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Git、TortoiseGit、GitHub、Gitee、GitLab 安装与入门使用 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

Git、TortoiseGit、GitHub、Gitee、GitLab 安裝與入門使用

  • Git、TortoiseGit、GitHub、Gitee、GitLab 簡介
    • Git
    • TortoiseGit
    • GitHub
    • Gitee
    • GitLab
  • Git 進行通信的原理簡介
    • 非對稱加密
    • Git 的通信方式
  • 實戰(zhàn)
    • Git 的下載與配置
      • Git 的下載與安裝
      • 創(chuàng)建一個 Git 項目
      • 生成密鑰對
    • TortoiseGit 的下載與配置
      • TortoiseGit 的下載與安裝
      • 生成密鑰對
    • GitHub 的使用
      • 注冊賬號
      • 綁定公鑰
      • 創(chuàng)建 GitHub 代碼倉庫
      • 下載 GitHub 代碼
      • 上傳文件至 GitHub
    • Gitee 的使用
      • 注冊賬號
      • 綁定公鑰
      • 創(chuàng)建 Gitee 代碼倉庫
      • 下載 Gitee 代碼
      • 上傳文件至 Gitee
    • GitLab 的使用
      • GitLab 下載與安裝
  • 總結(jié)與補充

??很多人剛開始接觸到標題的這些個名詞時并不是自愿的,畢竟為什么要費力了解自己看來完全不需要的東西。但是很遺憾,這還是企業(yè)開發(fā)的入門技術(shù),個人進行較大型的開發(fā)時使用它們也很有意義。本文簡介它們的入門知識,但它們所包含的內(nèi)容還不止如此,讀者還需要在使用時邊學(xué)習(xí)邊積累。

Git、TortoiseGit、GitHub、Gitee、GitLab 簡介

Git

??Git 是什么?在回答這個問題之前,需要知道沒有它會有哪些問題。我們習(xí)慣使用操作系統(tǒng)自帶的文件系統(tǒng)來管理文件,通常,這已經(jīng)能滿足我們的大多數(shù)需求了。不過,考慮一個更復(fù)雜但實際的問題。如果我們對一個文件進行了多次的修改、替換、刪除,然后某天我們后悔了,想找回之間的那個文件該怎么辦呢?顯然,這不是簡單通過一個操作系統(tǒng)中的回收站就可以解決的——它最多只能解決刪除的問題。Git 可以解決這個問題。它會將用戶對本目錄下所有的文件(夾)的改動都保存在本目錄下的隱藏文件夾 .git 中。在不違反邏輯的情況下,用戶可以自由切換到任何一個歷史的狀態(tài)。

??對于多人合作開發(fā),Git 能帶來極大的便利。相對于 SVN,它不需要時時刻刻聯(lián)網(wǎng),這又是它的一大優(yōu)勢。不過要注意,Git 適合用于對文本類型文件的版本管理,比方說代碼源文件。文本類型文件往往體積小,且可直接閱讀解析。如果是一種大型二進制文件,使用 Git 并不會有想象中的便利。

TortoiseGit

??雖然 Git 已經(jīng)實現(xiàn)了版本控制,不過能否實現(xiàn)與使用起來是否方便沒有必然性。如果只使用 Git,讀者將會在感受命令行無所不能之后將 Git 卸載。畢竟,沒有人愿意在沒有觀眾的情況下,將任何操作都通過輸入命令來實現(xiàn)。之所以會這樣,大概是因為 Git 的發(fā)明者與 Linux 的是同一個人。TortoiseGit 提供了 UI 界面在很大程度上解決了這個問題。對于常用的 Git 操作,只需要通過 TortoiseGit 提供的右鍵菜單和 UI 界面即可完成。不過,對于較復(fù)雜的 Git 操作,仍然需要通過在命令行輸入命令來完成。

GitHub

??Git 只是提供了版本控制的功能,但很多時候我們還需要將文件備份、在網(wǎng)絡(luò)上分享。GitHub 提供了儲存用戶上傳的文件的功能。在本質(zhì)上,它只支持通過 Git 來上傳文件。應(yīng)該說,它只是一種 Git 遠程倉庫,而 Git 只是一種文件管理傳輸工具。如果可以承受一定的成本,也可以選擇自行構(gòu)建一個自己的 Git 遠程倉庫來備份自己的重要文件,而 GitHub 只是一個全球公共的 Git 遠程倉庫。

??不過,前面提到過,Git 只是適合用于對文本類型文件的版本管理。因此,依賴 Git 的 GitHub 與普通理解中的云盤是有很大區(qū)別的。GitHub 并不適合備份自己的任何類型的文件,這不僅僅是限于網(wǎng)速與安全性。如果想要使用 GitHub 進行備份,要想想要備份的文件,它的歷史版本是否重要。

Gitee

??GitHub 的一個很大的弊端就是,它需要互聯(lián)網(wǎng),但它不是國人發(fā)明的。這意味著會有網(wǎng)絡(luò)的問題。實際上,這個問題很大。不管是不是高峰期,對于國內(nèi)的普通網(wǎng)絡(luò),五次能有一次可以打開 GitHub 主頁已經(jīng)不錯了。Gitee 就是一種 GitHub 的“國內(nèi)版本”,它又叫碼云。使用 Gitee 基本不會有網(wǎng)絡(luò)的問題,而且它還支持導(dǎo)入 GitHub 中的項目。這意味著,如果直接下載某個 GitHub 項目很慢,可以選擇先在 Gitee 中將其導(dǎo)入,然后直接在 Gitee 中下載。

GitLab

??GitLab 與前面的 GitHub、Gitee 很相似,不過它可以作為一個私有的 Git 遠程倉庫。可以使用 GitLab 作為平臺來在個人服務(wù)器上搭建一個 Git 遠程服務(wù)器,這樣在將本地 Git 項目推送到遠端時,可以不借助互聯(lián)網(wǎng),只需要局域網(wǎng),就儲存在自己的私人存儲空間中。這對企業(yè)開發(fā)是很有利的,畢竟將自己企業(yè)的數(shù)據(jù)上傳至非私有的服務(wù)器有很大的安全隱患。

??GitLab 服務(wù)器在搭建完成之后,還可以像 GitHub、Gitee 一樣在網(wǎng)頁端對其進行訪問。支持像 GitHub、Gitee 一樣注冊賬號和管理這些賬號。另外,它還支持 CI、CD 功能。

??對于 GitLab 的基礎(chǔ)功能,使用 GitLab 是免費的,如果需要更多的功能,這需要按功能強大程序支付相應(yīng)的費用。另外,GitLab 只能直接部署在指定的 Linux 上,對部署的 Linux 的硬件性能也有一定的要求。

Git 進行通信的原理簡介

非對稱加密

??信息在互聯(lián)網(wǎng)上傳輸是要加密的,這個加密是強制的,不能選擇讓自己自愿承擔風險而主動放棄加密。這就好比現(xiàn)在不能自愿承擔被盜號風險而拒絕登記手機號一樣。

??這里來講講非對稱加密。出于本文的重點,這里不作深入探究,也不講解其它的加密方式,這是密碼學(xué)的內(nèi)容。非對稱加密是通過公鑰與私鑰來進行加密與解密的,其中,公鑰與私鑰的內(nèi)容是不同的,因此稱為非對稱加密。具體來說,對于一次信息傳輸,發(fā)送方會先將此信息使用接收方公鑰進行加密,然后發(fā)送給接收方,接收方會使用接收方私鑰進行解密,從而保證傳輸時信息的安全。

??那么,發(fā)送方如何才能獲得接收方的公鑰呢?說明這個問題之前,先要說明的是,公鑰與私鑰的區(qū)別不僅在于,公鑰是用加密的,私鑰是用于解密的。實際上,公鑰對外公開的,而私鑰只有接收方才知道。在這個信息傳輸過程中,接收方的公鑰與私鑰都是接收方自己使用一定的算法生成的。在一開始,只有接收方知道自己的公鑰與私鑰,然后接收方將自己的公鑰首先以明文的方式傳給發(fā)送方,之后發(fā)送方才會向接收方傳輸信息。因為公鑰只能用于加密,所以不怕別人知道。比方說,如果第三者通過監(jiān)聽等手段竊取了傳輸過程中接收方的公鑰和發(fā)送方的密文,但他沒有接收方的私鑰,所以他擁有密文,他也不知道實際內(nèi)容是什么。

Git 的通信方式

??前面講過,GitHub、Gitee 都是使用 Git 進行文件傳輸?shù)拇a托管平臺,而支持很多種通信協(xié)議,如 HTTPS、SSH 等。這里重點講解通過 SSH 方式的傳輸。

??如果使用 HTTPS 進行傳輸,則密鑰的生成是由軟件自動完成的。實際上這個過程較為復(fù)雜,不過它對用戶透明,所以不需要了解其中的內(nèi)部機制。通常,這和普通的網(wǎng)頁下載方式?jīng)]有區(qū)別,通信效率會受到網(wǎng)絡(luò)的影響。

??如果使用 SSH 進行傳輸,通信效率往往高于 HTTPS,不過需要額外進行一些手動配置。SSH 通信時使用非對稱加密。在使用該協(xié)議之前,需要先手動生成自己的密鑰對,然后將自己的公鑰上傳給遠端代碼托管平臺,最后在傳輸前指定自己的私鑰才能進行傳輸。自己生成的私鑰是與當時同時生成的公鑰是配對的,因此私鑰必須妥善保存。如果之后不小心刪除了本地的私鑰,則需要再生成一對密鑰并將公鑰上傳。

實戰(zhàn)

??前面已經(jīng)給出它們的簡介。現(xiàn)在開始介紹它們的入門實戰(zhàn)使用。

Git 的下載與配置

Git 的下載與安裝

  • 打開 Git 官網(wǎng)下載 Git。Git 的下載鏈接其實源自 GitHub。前面提到過,對于國內(nèi)普通的網(wǎng)絡(luò),此過程會很緩慢。

    Git 的官網(wǎng)下載地址:https://git-scm.com/download/win

    另外,Git 在 GitHub 上的開源地址是:https://github.com/git-for-windows/git/

  • Git 的安裝較為傻瓜,正如它的名稱一樣。對于新手來說,在下載完 Git 安裝包之后,安裝時除了注意安裝路徑之外,一直 next 即可。

  • 在正常安裝完 Git 之后,右鍵菜單應(yīng)該會有關(guān)于 Git 的菜單項。點擊 Git Bash Here 即可進入 Git 的命令行界面:

  • 創(chuàng)建一個 Git 項目

  • 在命令行下輸入命令即可創(chuàng)建一個 Git 項目(代碼倉庫):

    git init

  • 生成密鑰對

  • 如果很喜歡使用 Git 命令行進行與遠程代碼平臺的交互,則需要使用 Git 生成的密鑰對。生成密鑰的方法是,先設(shè)置 用戶名 與 郵箱:

    git config --global user.name "用戶名"
    git config --global user.email "郵箱"

    其中,上面的 用戶名、郵箱 要改為自己需要設(shè)置的相應(yīng)值。

  • 輸入以下生成密鑰對。然后一直按 ENTER 即可:

    ssh-keygen -t rsa -C "郵箱"

    其中,上面的 郵箱 要改為自己需要設(shè)置的相應(yīng)值。

  • 可見,上面的命令生成了密鑰對,并將其保存在了文件夾 C:\Users\Windows 用戶名\.ssh 中。打開該文件夾,可以看到兩個文件:id_rsa、id_rsa.pub。第一個文件是私鑰,第二個文件是公鑰。這兩個文件其實都是文本文件,都可以文本方式打開。前面說過,公鑰需要提供給遠程平臺,因此需要復(fù)制其中的內(nèi)容。這里,需要復(fù)制的公鑰的內(nèi)容為全文。

    再次提醒:私鑰需要妥善保存。如果沒有私鑰,前面上傳至遠程平臺的公鑰等于作廢。

  • TortoiseGit 的下載與配置

    TortoiseGit 的下載與安裝

  • 必須先安裝 Git 之后才能安裝 TortoiseGit。

  • 打開 TortoiseGit 的官網(wǎng)下載 TortoiseGit,網(wǎng)址:https://tortoisegit.org/download/

    TortoiseGit 還提供了官方漢化包。通常,進行漢化可以減少語言的障礙,不過,此處卻建議不要使用漢化包。并不是為了本末倒置地鍛煉自己的英語,而是 TortoiseGit 中的有很多菜單選項對應(yīng)著 Git 中的命令,而命令屬于一種專有名詞,它不應(yīng)該被翻譯。在 TortoiseGit 中使用漢化會對 Git 的學(xué)習(xí)帶來干擾,所以建議不要使用漢化。

  • TortoiseGit 的安裝比 Git 還要傻瓜,此處不作介紹。如果同時下載了漢化包,則漢化包需要在TortoiseGit 的安裝包安裝之后才能進行安裝。在安裝完 TortoiseGit 之后,右鍵菜單應(yīng)該有了關(guān)于 TortoiseGit 的菜單項。進入 Settings 之后,應(yīng)該能看到關(guān)于 Git 的安裝信息。

  • 生成密鑰對

  • 在開始菜單中找到 TortoiseGit 的一個程序 PuTTYgen,并運行。

  • 點擊 Generate 生成密鑰對。注意,需要在生成過程中不斷點擊圖中空白,以防止程序卡死。

  • 生成成功之后,顯示出來的就是公鑰了。與前面在 Git 中一樣,需要全文復(fù)制這個公鑰,以及保存自己的私鑰。

    再次提醒:私鑰需要妥善保存。如果沒有私鑰,前面上傳至遠程平臺的公鑰等于作廢。

  • 和 Git 一樣,需要填寫 用戶名、郵箱 信息。

  • GitHub 的使用

    注冊賬號

  • 注冊一個 GitHub 賬號。GitHub 的官網(wǎng)是:https://github.com/
  • 綁定公鑰

  • 前面提到過,GitHub 需要綁定公鑰用于文件傳輸。方法如下:

  • 在此處,需要粘貼前面生成的公鑰全文。注意,公鑰需要以 ssh-rsa 等作開頭。

  • 創(chuàng)建 GitHub 代碼倉庫

  • 只有先創(chuàng)建一個 GitHub 倉庫之后才能向 GitHub 上傳代碼。方法如下:

  • 下載 GitHub 代碼

  • 下載 GitHub 倉庫代碼可以使用很多方式,前面已經(jīng)提到過,如 HTTPS、SSH 等,一般選擇 SSH。因為前面已經(jīng)上傳過公鑰,所以此處可以使用 SSH 來下載。如果沒有綁定公鑰,則只能使用 HTTPS 的方式,一般來說,對于國內(nèi)網(wǎng)絡(luò)的 GitHub,下載起來會非常慢。如果選擇 SSH 的方式,則需要先復(fù)制此項目的 SSH 地址。

  • 然后可以選擇 Git 或 TortoiseGit 來下載,這里選擇 TortoiseGit。下載 GitHub 代碼倉庫的本質(zhì)是使用的 Git 的 git clone 命令。下載的時候需要指定自己前面生成的私鑰。

  • 下載成功的標志是顯示 Success 字樣。

  • 上傳文件至 GitHub

  • 如果對 Git 倉庫的文件進行了改動,則在資源管理器中會有紅色角標標識。此標識代表此改動還沒有使用 Git 來保存。

  • 可以使用 git add、git commit 命令將此改動提交至本地 Git 記錄中。如果使用 TortoiseGit,這個操作可以變得沒有技術(shù)障礙。

  • 如果想將本次改動更新至 GitHub 中,則需要使用 git push 命令。push 時也需要借助自己的私鑰,通常,這需要事先在本地 Git 項目中事先指定。如果這個項目源自前面從遠程倉庫的 clone,則這個私鑰將默認設(shè)為前面 clone 時的私鑰。

    psuh 有很多方法,在 TortoiseGit 中,這可以接著上面的 git commit 之后來完成。

  • 現(xiàn)在,如果刷新 GitHub 中相應(yīng)的代碼倉頁面,應(yīng)該可以看到剛才的改動。
  • Gitee 的使用

    注冊賬號

  • Gitee 的使用與 GitHub 基本類似,而且 Gitee 還是全中文的界面,可以說是無障礙了。首先,也是需要注冊一個 Gitee 賬號。Gitee 的官網(wǎng)是:https://gitee.com/
  • 綁定公鑰

  • 與 GitHub 一樣,這也需要上傳公鑰。

  • 創(chuàng)建 Gitee 代碼倉庫

  • 這個非常簡單,與 GitHub 也是類似的,從略。
  • 下載 Gitee 代碼

  • 與 GitHub 類似的,需要先獲得該代碼倉的 SSH 地址。

  • 復(fù)制之后的操作與前面在 GitHub 中是完全一樣的。這里從略。

  • 上傳文件至 Gitee

  • 此部分與前面在 GitHub 中也是完全一樣的,這里從略。這是因為 Gitee 和 GitHub 一樣,只是一個遠程代碼倉庫而已。
  • GitLab 的使用

    GitLab 下載與安裝

    • 關(guān)于這方面的內(nèi)容,可見筆者的另一篇博客:

      Linux 下 GitLab 安裝教程:
      https://blog.csdn.net/wangpaiblog/article/details/122264366

    總結(jié)與補充

    • 關(guān)于 Git,還有很多概念與操作,如 branch、clone、fork。限于篇幅,此處不作詳解,有興趣的讀者可見筆者的另一篇博客:

      fork 與 branch、clone 的區(qū)別:
      https://blog.csdn.net/wangpaiblog/article/details/115879464

    總結(jié)

    以上是生活随笔為你收集整理的Git、TortoiseGit、GitHub、Gitee、GitLab 安装与入门使用的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。