git是一個開源的分布式版本控制系統 (VCS),可以有效、高速地處理從很小到非常大的項目版本管理。
用于跟蹤源代碼更改。它允許多個開發人員一起進行非線性開發。
Linux、macOS、Windows都可以在官網下載下傳對應平台安裝包,
下載下傳位址:https://git-scm.com/downloads
下面介紹三種平台的其它安裝方式:
使用 <code>dnf</code>:
如果你在基于 Debian 的發行版上,如 Ubuntu,請使用 <code>apt</code>:
在安裝 Xcode Command Line Tools。 Mavericks (10.9) 或更高版本的系統中,在 Terminal 裡嘗試首次運作 git 指令即可。
如果沒有安裝過指令行開發者工具,将會提示你安裝。
去Git 官方網站下載下傳。 下載下傳位址: https://git-scm.com/download/win
國内鏡像:https://npm.taobao.org/mirrors/git-for-windows/
檢測安裝成功可以運作 <code>git</code>指令測試是否安裝成功
當你安裝好了git後,在Windows上會有三個内容
Git Bash,是Git配套的一個控制台
Git CMD(Deprecated),是通過CMD使用Git
Git GUI,是Git的可視化操作工具
下列git操作示例使用GitHub和GitLab舉例
這一步前需要先注冊好Github賬号,GitLab操作和GitHub一樣
檢視全局配置結果
當輸入指令後會提示三次需要輸入密碼,直接敲回車。
運作生成SSH密鑰指令會在本地 <code>.ssh</code>檔案夾生成兩個檔案
id_rsa // 密鑰 id_rsa.pub //公鑰
将生成的ssh公鑰 <code>id_rsa.pub</code>複制到平台的ssh密鑰中,路徑:<code>使用者設定->SSH密鑰</code>
Linux中檔案生成位置,可以通過下列指令進入
macOS中檔案生成位置,也可以通過下面指令進入或打開,
Windows中檔案生成位置,路徑如下
如果一台機器需要連接配接多個git平台
根據不同平台生成不同SSH密鑰
将生成的公鑰添加到對應的平台上
在 <code>.ssh</code>檔案夾中新增 <code>config</code>檔案并寫入一下内容
添加到本地倉庫
測試連接配接是否成功
初始化倉庫後會在輸入指令所處的檔案夾生成一個<code>.git</code>檔案
克隆代碼,後面跟着的是你想克隆代碼的項目位址
送出代碼至遠端倉庫
檢視分支
切換分支
切換到你想送出的分支
添加檔案到暫存區
檢視檔案狀态
添加送出的描述資訊
送出到遠端
推送代碼到遠端倉庫
實際使用git的過程中,會出先各種各樣問題,本文記錄下作者出現問題較多的一些問題,後續會更新。
Permission denied, please try again.
問題描述:
在 gitlab 倉庫已經添加了 ssh key 之後,用 vsCode 或者 sourcetree 操作倉庫時,會彈出提示
問題分析:
mac每次重新開機機器都需要 root 密碼擷取 ~/.ssh/id_rsa.pub 的 key
問題日志:
Git: Permission denied, please try again.
解決辦法:
ssh-add 這個指令不是用來永久性的記住你所使用的私鑰的。實際上,它的作用隻是把你指定的私鑰添加到 ssh-agent 所管理的一個 session 當中,這個方法不是一勞永逸
Your push would publish a private email address.
在推送代碼的時候出現問題,拉取代碼可以拉取
由于電子郵箱的限制
! [remote rejected] main -> main (push declined due to email privacy restrictions)
<code>setting</code>-><code>emails</code>-><code>Keep my email address private</code> 将這個單選框給去掉,再重新試試