2025年最新版 Git和Github的綁定方法,以及通過Git提交文件至Github的具體流程(詳細版)

文章目錄

  • Git和Github的綁定方法與如何上傳至代碼倉庫
    • 一. 注冊 GitHub 賬號
    • 二.如何創建自己的代碼倉庫:
      • 1.登入Github賬號,完成登入后會進入如下界面:
      • 2.點擊下圖中紅色框選的按鈕中的下拉列表
      • 3.選擇New repostitory
      • 4.進入創建界面后,按照下圖所示操作,完成操作后點擊綠色的Create repository按鈕
      • ? 1. `Initialize this repository with a README`
        • 具體作用:
        • 幾乎所有項目都應有一個 README,可以當成項目的名片+使用手冊
      • ? 2. `.gitignore` 文件
        • 具體作用:
        • 示例(Python 項目):
        • 推薦不設置 `.gitignore`,很容易把一些不該提交的文件誤上傳,引發沖突或體積變大。GitHub 提供了各種語言的模板,一鍵搞定,建議勾選!
      • ? 3. `License`(許可證)
        • 具體作用:
        • 常見許可證類型:
        • 推薦理由:
      • 📌 總結建議:
    • 三.Git綁定Github的方法
      • 1. 將Git綁定到Github的作用
      • 2. 下載Git并完成安裝
      • 3. 打開Git bash
        • 輸入指令:
        • 引號中需要為Github賬號所綁定郵箱
          • **A. Generating public/private rsa key pair.**
          • **B. Enter file in which to save the key (/c/Users/23370/.ssh/id_rsa):**
          • **C. Enter passphrase for "/c/Users/23370/.ssh/id_rsa" (empty for no passphrase): 請輸入登入密碼**
          • **D. Enter same passphrase again:請你確定登入密碼(再次輸入)**
          • **E. 最終生成的文件:**
      • 4. 前往當前設備的密匙保存路徑,比如``/c/Users/23370/.ssh`` , 打開生成的ssh key文件id_rsa.pub并復制key字符串
      • 5.點擊Github中的頭像,點擊側邊欄中的Settings,按照 GitHub → Settings → SSH and GPG keys → New SSH key(綠色按鈕)的步驟操作
        • 🛠? Authentication Key vs Signing Key 的區別
        • 🎯 最簡單理解:
        • 📌 小例子
          • 不設置 Signing Key 時:
          • 配置了 Signing Key 后:
      • 6. 在Git bash上驗證是否綁定成功
        • (1)輸入指令: ssh -T git@github.com,回車后輸入剛才設置的密匙密碼(注意密碼是看不見的)
        • (2)設置username和email,輸入如下指令:
        • git config --global user.name "xxx"
        • git config --global user.email "xxxx@xxx.com"
        • **這里需要注意一點:因為 GitHub 上每一條提交記錄(commit)都和郵箱綁定。**所以在git config --global user.email "xxxx@xxx.com"中填寫的必須是Github綁定的郵箱
      • ? `git config --global` 設置**一次就永久生效**
        • 如何檢查一下你現在的 git 配置是否正確,直接輸入如下指令:
        • 如果以后你想檢查自己當前的 `user.name` 和 `user.email` 配置,可以用:
        • (3)設置git的本地倉庫
          • 1、直接在需要上傳的文件目錄下右鍵點擊打開git bash
          • 2、 創建本地git倉庫的方法:在git bash終端輸入指令git init
          • 3、 上傳文件到Github的方式
          • 解釋:
          • 為什么會出現這個警告:
          • 解決方法:
          • **如果你希望 Git 始終保持一致的行結束符**:
          • 記住重要的一點:
      • 🏅 小tip:**這種方式只適用于已經被 Git 管理的文件,新文件還是需要 `git add`。**
      • 總結流程
        • (4)本地倉庫與github遠程倉庫關聯
          • 1、查看Github代碼倉庫地址
          • 2、 在Git bash上執行關聯操作,輸入如下指令(引號為代碼倉庫的地址信息)
          • 為什么需要綁定倉庫?
          • **在 GitHub 上創建一個新的倉庫**(假設你已經在 GitHub 上創建了一個名為 `my-repo` 的倉庫)
          • 將遠程 GitHub 倉庫綁定到本地倉庫**
          • **驗證遠程倉庫是否綁定成功**
          • 3、 🎯 **在多個 GitHub 倉庫中選擇目標倉庫**
          • **切換遠程倉庫**:
          • 3.1 `git remote add` 的作用
          • 3.2 origin vs 自定義遠程名
          • 3.3 推送到不同的遠程
          • 3.4 如何查看和管理已有遠程
          • 具體解釋:
          • 例子:
      • 查看所有遠程倉庫:
      • 小結:
          • 4、 在Git bash上輸入如下指令,將文件從本地上傳到Github
          • 1. **把本地的 `master` 分支推送到遠程的 `origin` 倉庫上**
          • 2. **建立本地分支和遠程分支的關聯(Tracking)**
          • 總結一句話:
          • 小補充一下:
        • (4)在Github上查看提交信息:
        • (5)克隆Github代碼倉庫到本地(git@github.com:xxx此處使用的是代碼倉庫的地址)

Git和Github的綁定方法與如何上傳至代碼倉庫

一. 注冊 GitHub 賬號

  • 所有團隊成員都需要各自注冊一個 GitHub 賬號:https://github.com/join
  • 注冊完成后,建議:
    • 配置好自己的頭像、昵稱
    • 綁定常用郵箱
    • 開啟雙因素認證(2FA,安全性更高)

二.如何創建自己的代碼倉庫:

1.登入Github賬號,完成登入后會進入如下界面:

在這里插入圖片描述

圖1.1 Github官網界面

2.點擊下圖中紅色框選的按鈕中的下拉列表

在這里插入圖片描述

圖1.2 創建代碼倉庫的按鈕所在位置

3.選擇New repostitory

在這里插入圖片描述

圖1.3 選擇新建倉庫的選項(New repostitory)

4.進入創建界面后,按照下圖所示操作,完成操作后點擊綠色的Create repository按鈕

在這里插入圖片描述

圖1.4 填寫新建倉庫的各項具體信息

? 1. Initialize this repository with a README

💡作用:創建一個初始的 README.md 文件,用來介紹這個項目

具體作用:
  • 項目說明的門面,通常包括:
    • 項目簡介
    • 安裝/運行方法
    • 使用示例
    • 作者和聯系方式
  • 一旦有這個文件,倉庫就不是“空倉庫”,可以直接 clone 或 pull(不然初始倉庫 clone 會報錯)
  • 會在 GitHub 頁面上直接顯示內容,美觀又實用
幾乎所有項目都應有一個 README,可以當成項目的名片+使用手冊

? 2. .gitignore 文件

💡作用:告訴 Git 哪些文件不應該提交到版本庫

具體作用:
  • 忽略本地臨時文件、不必要的環境文件、防止“臟數據”污染倉庫
  • 通常用于排除:
    • 編譯生成的中間文件(如 .pyc, dist/
    • 編輯器配置(如 .vscode/, .idea/
    • 依賴庫(如 node_modules/, .venv/
    • 系統文件(如 .DS_StoreThumbs.db
示例(Python 項目):
gitignore復制編輯__pycache__/
*.pyc
*.pyo
*.pyd
.venv/
.env
.idea/
.vscode/
推薦不設置 .gitignore,很容易把一些不該提交的文件誤上傳,引發沖突或體積變大。GitHub 提供了各種語言的模板,一鍵搞定,建議勾選!

? 3. License(許可證)

💡作用:告訴別人你這個代碼允許別人怎么用

具體作用:
  • 沒有許可證 = 默認 保留所有權利,別人不能合法地復制、修改、使用你的代碼
  • 加上許可證 = 明確允許他人使用、修改、轉載,但可能有條件
常見許可證類型:
許可證開源?可商用?要注明作者?要開源修改?特點
MIT????非常寬松,適合開源又希望推廣
Apache 2.0????保護專利權,適合商業項目
GPL????必須開源修改后的代碼
無許可證????默認“版權保留”,不能用
推薦理由:
  • 如果你是開源項目:建議選 MIT 或 Apache 2.0
  • 如果你不希望別人隨便用,就不要加 license 或聲明專有協議
  • 如果是私有倉庫,license 可選,但加一個也有規范感

📌 總結建議:

選項是否建議勾選說明
README.md? 必勾選項目說明文件,增強可讀性,避免空倉庫
.gitignore? 必勾選忽略無用文件,保持倉庫整潔
License? 可視情況勾選建議開源項目選擇 MIT/Apache,私有項目可略過

三.Git綁定Github的方法

1. 將Git綁定到Github的作用

本地 Git 倉庫可以同步到 GitHub。

其他成員可以 clone、pull、push 同一個遠程倉庫,一起協作開發

GitHub 上還能:

  • 創建 issue(任務追蹤)
  • 提交 Pull Request(代碼審核)
  • 做 CI/CD(自動測試部署)
  • 備份代碼,防止丟失
  • 顯示項目進度和文檔(README、Wiki)

2. 下載Git并完成安裝

git安裝教程

3. 打開Git bash

在這里插入圖片描述

輸入指令:
ssh-keygen -t rsa -C "xxxx@xxx.com"
引號中需要為Github賬號所綁定郵箱

會有如下顯示:

Generating public/private rsa key pair.
Enter file in which to save the key (/c/Users/23370/.ssh/id_rsa):
Enter passphrase for "/c/Users/23370/.ssh/id_rsa" (empty for no passphrase):
Enter same passphrase again:
A. Generating public/private rsa key pair.

🔹 系統正在幫你生成一對新的密鑰(RSA算法,安全性很高)。

B. Enter file in which to save the key (/c/Users/23370/.ssh/id_rsa):

🔹 讓你指定密鑰文件保存的位置,默認存到:

/c/Users/23370/.ssh/id_rsa

? 通常直接回車就行,用默認路徑沒問題

C. Enter passphrase for “/c/Users/23370/.ssh/id_rsa” (empty for no passphrase): 請輸入登入密碼

🔹 讓你為私鑰文件設置一個密碼(叫做 passphrase)。

  • 如果你輸入密碼,以后用這個 SSH 密鑰連接時,每次需要輸入這個密碼。
  • 如果你直接回車(留空),就不用密碼,連接會更快(但稍微沒那么安全)。
D. Enter same passphrase again:請你確定登入密碼(再次輸入)
E. 最終生成的文件:
文件內容用途
id_rsa私鑰自己保存,絕不能泄露
id_rsa.pub公鑰上傳到 GitHub 等服務器

4. 前往當前設備的密匙保存路徑,比如/c/Users/23370/.ssh , 打開生成的ssh key文件id_rsa.pub并復制key字符串

在這里插入圖片描述

圖 1.5 保存當前密匙的文件界面

5.點擊Github中的頭像,點擊側邊欄中的Settings,按照 GitHub → Settings → SSH and GPG keys → New SSH key(綠色按鈕)的步驟操作

在這里插入圖片描述

在這里插入圖片描述

在這里插入圖片描述

在這里插入圖片描述

圖 1.6 將`id_rsa.pub` 的內容復制進去,再點擊Add SSH key綠色按鈕進行創建
🛠? Authentication Key vs Signing Key 的區別
項目Authentication Key(認證密鑰)Signing Key(簽名密鑰)
主要用途用來登錄 GitHub,比如 git push用來給提交(commit)做簽名,證明是你本人提交
Git 操作影響? git push、pull、clone 必須靠它🚫 不影響推拉,只管提交簽名
是否必需? 必須有一把🔸 可選(簽名是提升可信度用的)
配置位置(GitHub)Settings → SSH and GPG keys → “Authentication Key”Settings → SSH and GPG keys → “Signing Key”
本地配置額外操作?否,只關聯 remote 就好是,需要告訴 Git 用哪把 Key 來簽名提交
使用感受連接 GitHub必需,最基礎提交更專業/可信,但新手可暫時不管

🎯 最簡單理解:
  • Authentication Key:登錄 GitHub 的門禁卡 🛂
  • Signing Key:每次提交(commit)的時候,在提交記錄上蓋一個你的私人印章 🪪
📌 小例子
不設置 Signing Key 時:
git commit -m "Fix bug"
#提交成功,但是 commit 記錄上沒有認證標識
配置了 Signing Key 后:
git commit -m "Fix bug"
#提交成功,GitHub上顯示 "Verified" 綠色小盾牌

這樣別人一看,就知道這是你本人提交的,不是別人偽造的。

在這里插入圖片描述

圖 1.7 成功創建的效果圖(配置成功的SSH key)

6. 在Git bash上驗證是否綁定成功

(1)輸入指令: ssh -T git@github.com,回車后輸入剛才設置的密匙密碼(注意密碼是看不見的)

在這里插入圖片描述

PS: 第一次輸入的時候會遇到如下顯示:(請輸入yes)

ssh -T git@github.com The authenticity of host 'github.com (20.205.243.166)' can't be established. ED25519 key fingerprint is SHA256:+DiY3wvvV6TuJJhbpZisF/zLDA0zPMSvHdkr4UvCOqU. This key is not known by any other names. Are you sure you want to continue connecting (yes/no/[fingerprint])?

第一次連接某個服務器(這里是 GitHub)時,SSH 客戶端不知道對方的身份,所以它提醒你:

?? “我第一次遇到 github.com,這臺機器的指紋是這個(SHA256:xxx),你要不要信任它?”

? 這相當于確認“你信得過 GitHub 的服務器”

? 如果你輸入 yes,SSH 會把 GitHub 的身份保存下來(記錄在你的 known_hosts 文件里),以后再連 GitHub,就不會再問你了。

隨后會有如下顯示:

Warning: Permanently added 'github.com' (ED25519) to the list of known hosts.
Enter passphrase for key '/c/Users/23370/.ssh/id_rsa': 
Warning: Permanently added 'github.com' (ED25519) to the list of known hosts.

🔹 系統告訴你:

  • 已經把 GitHub 的服務器信息(它的身份指紋)記錄到本地了。
  • 下次連接 GitHub 時,不需要再問你了。
  • 存在文件里:~/.ssh/known_hosts

(? 正常現象,沒任何問題。)


Enter passphrase for key '/c/Users/23370/.ssh/id_rsa':

🔹 這里問你要SSH私鑰的密碼(passphrase)。

這是因為:

  • 你在一開始生成 SSH 密鑰的時候,設置了passphrase(私鑰保護密碼)。
  • 現在要用這把私鑰去連接 GitHub,所以系統要你輸入密碼來解鎖私鑰

👉 只要輸入你當時設置的密碼就行(輸入的時候不會顯示星號 *,正常的)。

顯示 Hi Ac157OL! You’ve successfully authenticated, but GitHub does not provide shell access.即為連接成功

? Hi Ac157OL!:GitHub 跟你打招呼,確認你的賬號(Ac157OL)已經通過了身份驗證。

? You’ve successfully authenticated:你的 SSH 密鑰驗證通過了,已經可以正常連 GitHub。

? but GitHub does not provide shell access:GitHub 只是用來托管代碼的,它不會給你一個遠程終端(shell),所以你不能像登錄服務器一樣直接操作。

(2)設置username和email,輸入如下指令:
git config --global user.name “xxx”
git config --global user.email “xxxx@xxx.com”

即使已經在Github完成了SSH key的綁定,但是依舊需要設置username和email這兩個參數,原因如下:

項目說明
SSH連GitHub只是讓你的電腦可以連上GitHub服務器,身份驗證通過了。
git config --global user.name/user.email是告訴 Git:以后每次你提交(commit)代碼時,署名用哪個名字和郵箱。
  • SSH連接 = “門禁卡”
    → 你刷卡進公司了
  • git config 設 username/email = “在文件上簽名”
    → 你在公司提交的每一份文件上,都要簽上你的名字和郵箱,告訴別人這是誰寫的

👉 不設 username/email,git commit 也能做,但提交記錄上就沒有明確署名或者是默認的,很亂很丑。

**這里需要注意一點:因為 GitHub 上每一條提交記錄(commit)都和郵箱綁定。**所以在git config --global user.email "xxxx@xxx.com"中填寫的必須是Github綁定的郵箱
  • 如果你設置了正確的郵箱(和 GitHub 賬號里的郵箱對應),GitHub 提交記錄上會顯示你的頭像和鏈接到你的 GitHub 賬號。
  • 如果亂填一個郵箱(比如打錯了),GitHub會顯示一個小問號 ?,無法正確關聯到你的賬號。

郵箱才是 GitHub 識別身份的關鍵不是靠 SSH名字

設置項要求說明
git config --global user.name隨便填(當然建議和GitHub用戶名一樣,看起來正規一點)只是一個“提交署名”的顯示名字,不影響 GitHub 識別身份。
git config --global user.email必須和你 GitHub 賬戶綁定的郵箱一致GitHub靠郵箱來識別你的提交歸屬,郵箱錯了,GitHub認不出來。

? git config --global 設置一次就永久生效

  • --global 代表:這個配置是全局配置只要在你電腦上,用Git提交,都會默認用這個name和email
  • 只需要執行一次,以后不用每次提交都再寫。
如何檢查一下你現在的 git 配置是否正確,直接輸入如下指令:
git config --global --list

就能看到現在生效的 user.nameuser.email

如果以后你想檢查自己當前的 user.nameuser.email 配置,可以用:
git config --global user.name
git config --global user.email

Git會直接告訴你現在生效的是哪一組設置。

(3)設置git的本地倉庫
1、直接在需要上傳的文件目錄下右鍵點擊打開git bash

在這里插入圖片描述

2、 創建本地git倉庫的方法:在git bash終端輸入指令git init

在這里插入圖片描述

內容意思
git init你執行了初始化命令
Initialized empty Git repositoryGit告訴你:“倉庫已經創建好了,當前是空的。”

Git 就會在這個文件夾下,悄悄建一個隱藏目錄 .git,用來記錄所有的版本變化、提交記錄、分支信息

  • 🔹 沒有 git init,Git 是不會管你文件怎么改的。
  • 🔹 一旦 git init,這里所有變化 Git 都能追蹤、記錄。

如果你想驗證一下 .git 真的在,可以在 Git Bash 里敲:

ls -a

它會列出所有文件(包括隱藏文件),你應該能看到一個 .git/ 文件夾。

3、 上傳文件到Github的方式

Git是分兩步提交的

3.1 將文件添加到 Git 暫存區:用 git add 把你指定的文件,標記為"準備好要提交",放到 Git 的“暫存區(staging area)”。

git add README.md
git add ./*
  • git add README.md 是只添加 README.md 一個文件。
  • git add ./ 是把當前目錄下所有文件都添加進去(相當于:全都準備好要提交了)。

3.2 正式提交到本地倉庫

git commit -m "本次提示信息" (這里的提示信息填寫什么都可以,可以說明修改的部分)

把剛剛 git add 過的文件,真正記錄到 Git 倉庫歷史中
并且用 -m "提示信息" 給這次提交寫一個小備注,告訴自己和別人:“這次提交是干了啥”。

  • 例子:git commit -m "初始化項目"
  • 例子:git commit -m "添加了登錄模塊"

commit是一次"快照"保存,給未來版本回滾提供依據

git add:把文件添加到暫存區

git commit:將暫存區的文件提交到本地 Git 倉庫,并生成一條提交記錄。

PS:如果文件名中有空格,你可以將整個文件名用引號包裹起來(單引號或雙引號都可以),這樣 Git 就能正確識別路徑。

例如:

git add 'AI Agent-V10'

或者:

git add "AI Agent-V10"

如果你不想使用引號,也可以使用反斜杠 \ 來轉義空格。這樣可以確保空格不會被分開:

git add AI\ Agent-V10

如果出現如下信息

$ git add 'AI Agent-V10'
warning: in the working copy of 'AI Agent-V10/AI Agent/test_model.py.code-workspace', LF will be replaced by CRLF the next time Git touches it
解釋:
  • LF (Line Feed)CRLF (Carriage Return + Line Feed) 都是行結束符,用來標識一行的結束。
    • LF (\n) 是 Unix 和 Linux 系統中使用的行結束符。
    • CRLF (\r\n) 是 Windows 系統中使用的行結束符。
  • Git 的默認行為是根據你的操作系統來管理文件的行結束符。在 Windows 上,Git 會將文件中的 LF(Unix 樣式行結束符)轉換為 CRLF(Windows 樣式行結束符),當 Git 操作這些文件時,會自動進行轉換。
  • 警告信息提醒你,下次 Git 在處理這個文件時,會把文件中的 LF 轉換成 CRLF
為什么會出現這個警告:
  1. 你的文件在本地工作區(working directory)中使用了 LF 作為行結束符。
  2. Git 會在下次操作這個文件時將其轉換為 CRLF,以符合 Windows 系統的行結束符標準。
解決方法:

這個警告本身并不會導致提交失敗。它只是告訴你,Git 會在下一次觸摸這個文件時,自動將行結束符轉換成 CRLF。

如果你不想看到這個警告或希望 Git 以特定方式處理行結束符,可以調整 Git 的配置。

如果你希望 Git 始終保持一致的行結束符

你可以使用以下命令來配置 Git 處理行結束符:

git config --global core.autocrlf true

這個設置會讓 Git 在提交時自動將 LF 轉換為 CRLF,而在檢出(checkout)時自動將 CRLF 轉換回 LF,適用于 Windows 系統。

記住重要的一點:

沒有 git add,提交會失敗,因為 Git 不知道你想提交哪些文件。

git commit 是在提交之前對暫存區的文件進行確認和打包(這時才會把你之前用 git add 加入的文件提交)。

git commit 不會“重新”添加文件,它僅僅是提交暫存區的內容,并且會生成一條提交記錄。如果沒有使用 git add,則沒有任何文件被加入提交

🏅 小tip:這種方式只適用于已經被 Git 管理的文件,新文件還是需要 git add

如果忘記加 git add,提交時可以加 git commit -a,它會自動把所有已經跟蹤的文件(已被 Git 管理的文件)加到暫存區,再提交:

git commit -a -m "提交所有修改"

總結流程

步驟命令解釋
1git init把這個文件夾變成 Git倉庫(開始版本管理)
2git add 文件名git add ./把文件放入"準備提交"的暫存區
3git commit -m "備注"真正提交到本地倉庫,寫一條變更記錄

你可以用下面的命令查看提交記錄(驗證成功了沒):

git log

可以看到每一次 commit 的 ID、作者、提交時間和備注。

(4)本地倉庫與github遠程倉庫關聯
1、查看Github代碼倉庫地址

在這里插入圖片描述

2、 在Git bash上執行關聯操作,輸入如下指令(引號為代碼倉庫的地址信息)
git remote add origin “git@github.com:xxxx"
為什么需要綁定倉庫?
  • 本地倉庫只是你的代碼保存在本地的地方,而**遠程倉庫(如 GitHub)**才是真正托管你的代碼的地方。
  • 當你提交(git commit)時,Git 只會保存在本地倉庫,它并不會自動上傳到 GitHub。
  • 為了將提交推送到遠程 GitHub 倉庫,你需要明確告訴 Git 要推送到哪個遠程倉庫

需要使用 git remote add 命令將本地倉庫與 GitHub 上的倉庫進行綁定,具體步驟如下:

在 GitHub 上創建一個新的倉庫(假設你已經在 GitHub 上創建了一個名為 my-repo 的倉庫)
  • 假設進入 GitHub,點擊“New repository”按鈕,創建一個新的倉庫,命名為 my-repo
將遠程 GitHub 倉庫綁定到本地倉庫**

在本地倉庫的 Git Bash 中,使用以下命令綁定 GitHub 倉庫:

git remote add origin https://github.com/你的用戶名/my-repo.git
  • origin 是 Git 默認的遠程倉庫名稱。
  • https://github.com/你的用戶名/my-repo.git 是你 GitHub 倉庫的 URL,你可以在 GitHub 倉庫頁面找到它。
驗證遠程倉庫是否綁定成功

你可以使用以下命令檢查綁定情況:

git remote -v

如果綁定成功,會顯示類似:

origin  https://github.com/你的用戶名/my-repo.git (fetch)
origin  https://github.com/你的用戶名/my-repo.git (push)
3、 🎯 在多個 GitHub 倉庫中選擇目標倉庫

如果你有多個遠程倉庫,你可以使用 不同的名字 來區分這些遠程倉庫。例如,如果你有兩個 GitHub 倉庫 repo1repo2,你可以這樣設置:

git remote add repo1 https://github.com/你的用戶名/repo1.git
git remote add repo2 https://github.com/你的用戶名/repo2.git

然后,推送到指定的遠程倉庫

git push repo1 master  # 推送到 repo1
git push repo2 master  # 推送到 repo2
切換遠程倉庫

你還可以隨時查看、刪除或修改綁定的遠程倉庫:

  • 查看遠程倉庫:git remote -v
  • 刪除遠程倉庫:git remote remove origin
  • 修改遠程倉庫 URL:git remote set-url origin 新的倉庫地址

綁定本地倉庫和 GitHub 倉庫:必須通過 git remote add origin <GitHub倉庫URL> 來綁定。

推送到指定倉庫:如果有多個倉庫,可以在 git push 時明確指定倉庫名,如 git push repo1 master

查看遠程倉庫:使用 git remote -v 查看已經綁定的遠程倉庫。

3.1 git remote add 的作用
git remote add <遠程名> <倉庫URL>
  • <遠程名>:給這個遠程倉庫起的一個本地“別名”,方便后面引用。例如 originrepo1backupupstream……
  • <倉庫URL>:你在 GitHub(或其他托管平臺)上創建的那個倉庫的地址。

3.2 origin vs 自定義遠程名
  • origin

    • 這是 Git 默認的遠程名,幾乎所有教程里把主倉庫都叫 origin
    • 當你 git clone 一個倉庫時,Git 會自動把源 ?? 設為 origin
  • 自定義(repo1、repo2、backup……)

    • 如果你還想推送到第二個、第三個倉庫,就可以再 git remote add 一個新的遠程名:

      git remote add repo1 https://github.com/你的用戶名/repo1.git
      git remote add repo2 https://github.com/你的用戶名/repo2.git
      
    • 這里的 repo1repo2 只是一種示例命名,完全可以換成任何你能一眼看出用途的名字,比如 originmirrorbackup


3.3 推送到不同的遠程
  • 如果你只有一個遠程(origin),那就:

    git push origin master
    
  • 如果你綁定了兩個遠程:

    push repo1 master   # 把 master 分支推到 repo1
    git push repo2 master   # 把 master 分支推到 repo2
    
  • 這樣,同一份代碼、同一個分支,可以同步推送到多個遠程倉庫。

3.4 如何查看和管理已有遠程
  • 查看

    git remote -v
    
  • 修改 URL

    git remote set-url repo1 新的地址
    
  • 刪除

    git remote remove repo2
    

**注意:git remote add origin 只能為 本地倉庫 添加 一個主遠程倉庫

而這個 origin 通常是你最初推送或克隆時默認綁定的倉庫。

具體解釋:
  • origin 是 Git 中的一個默認遠程倉庫名,當你克隆一個倉庫時,Git 會自動將這個遠程倉庫命名為 origin,并將其作為默認的推送和拉取源。
  • 每個本地倉庫只能有 一個 origin,但是你可以通過 git remote add 命令為一個本地倉庫添加 多個其他遠程倉庫,這些遠程倉庫的名字可以是自定義的(如 repo1, repo2, backup, staging 等)。
例子:

假設你有一個本地倉庫,你想同時推送到 GitHub 和 GitLab:

  1. 首先添加 GitHub 倉庫(作為 origin

    git remote add origin https://github.com/你的用戶名/your-repo.git
    

    這里的 origin 是默認的遠程倉庫名。

  2. 再添加 GitLab 倉庫(可以使用自定義名字)

    git remote add gitlab https://gitlab.com/你的用戶名/your-repo.git
    

查看所有遠程倉庫:

git remote -v

輸出會類似于:

origin    https://github.com/你的用戶名/your-repo.git (fetch)
origin    https://github.com/你的用戶名/your-repo.git (push)
gitlab    https://gitlab.com/你的用戶名/your-repo.git (fetch)
gitlab    https://gitlab.com/你的用戶名/your-repo.git (push)

小結:

  • origin 是默認的遠程倉庫名,且每個本地倉庫只能有一個 origin
  • 你可以為同一個本地倉庫添加多個遠程倉庫,只要它們的名字不同(例如 originrepo1repo2 等)。
  • origin 并不限制你只能添加一個倉庫,其他自定義的遠程倉庫名沒有限制
4、 在Git bash上輸入如下指令,將文件從本地上傳到Github

當你在本地倉庫里執行這條指令:

git push -u origin master

它做了兩件事情:


1. 把本地的 master 分支推送到遠程的 origin 倉庫上
  • origin 是你本地設置的遠程倉庫名(通常指向 GitHub 上那個倉庫地址)。
  • master 是你要推送的本地分支名字(現在有些倉庫默認是 main,但如果你本地分支叫 master,就寫 master)。
  • 這一步會真正把你的代碼文件上傳到 GitHub 倉庫上,GitHub 頁面上也能看到文件了。

2. 建立本地分支和遠程分支的關聯(Tracking)
  • -u--set-upstream 的簡寫。
  • 它的作用是告訴 Git:“以后這個本地分支(master)默認關聯到遠程的 origin/master 分支”。
  • 好處是以后就可以直接用更短的指令推送或者拉取,比如:
    • 推送:git push
    • 拉取:git pull
  • 不需要每次都敲一大串 git push origin master

總結一句話:

? git push -u origin master 會把代碼傳到 GitHub,并且幫你把本地分支和遠程分支自動關聯好,以后操作就方便很多了


小補充一下:
  • 如果是第一次推送(第一次建立遠程倉庫的連接),一定要用 -u
  • 之后繼續更新代碼,只需要在本地改完 ? git add . ? git commit -m "描述" ? git push,就可以了,不用再加 origin master,很省事!
(4)在Github上查看提交信息:

點擊如下按鈕,選擇分支(該分支名稱和提交時指令git push -u origin master中的master有關系)

在這里插入圖片描述

(5)克隆Github代碼倉庫到本地(git@github.com:xxx此處使用的是代碼倉庫的地址)
git clone git@github.com:xxx

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/pingmian/77835.shtml
繁體地址,請注明出處:http://hk.pswp.cn/pingmian/77835.shtml
英文地址,請注明出處:http://en.pswp.cn/pingmian/77835.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

FPGA開發板這樣做?(一)-像 Arduino 一樣玩 FPGA

這也是一個系列文章&#xff0c;來源之前和粉絲們在評論區討論的國外對于FPGA的開發或者入門所做的努力。 基本一篇文章會介紹一個FPGA開發板&#xff0c;重點在于為開發板準備的開發方式&#xff08;和國內大不相同&#xff09;。 今天的主角-PulseRain M10&#xff1a;像 Ard…

【C++游戲引擎開發】第21篇:基于物理渲染(PBR)——統計學解構材質與光影

引言 宏觀現象:人眼觀察到的材質表面特性(如金屬的高光銳利、石膏的漫反射柔和),本質上是微觀結構對光線的統計平均結果。 微觀真相:任何看似平整的表面在放大后都呈現崎嶇的微觀幾何。每個微表面(Microfacet)均為完美鏡面,但大量微表面以不同朝向分布時,宏觀上會表…

深入理解linux操作系統---第11講 bshell編程

11.1 正則表達式 11.1.1 字符集 正則表達式的字符集包含三類核心要素&#xff1a; 普通字符&#xff1a;直接匹配單個字符&#xff0c;如a匹配字母a范圍字符集&#xff1a;[a-z]匹配所有小寫字母&#xff0c;[0-9A-F]匹配十六進制數字預定義字符集&#xff1a;\d等價于[0-9]…

C++中的引用:深入理解與實用示例

文章目錄 C中的引用&#xff1a;深入理解與實用示例一、引用的基本概念二、引用作為別名的應用三、引用作為函數參數四、指針與引用的區別五、常量引用六、引用與返回值七、總結 C中的引用&#xff1a;深入理解與實用示例 在C編程中&#xff0c;“引用”是一個強大而重要的概念…

C#委托介紹

委托可以將方法作為參數傳遞&#xff0c;同時委托也可以自己作為參數傳遞 委托可分為自定義委托delegate 無返回值的Action 與有返回值的Func委托 也有匿名委托與Lamada 委托支持多播是事件的基礎 用處如在分線程調用主線程的UI invoke public delegate string Say(stri…

Node.js 模塊導入的基本流程

Node.js 模塊導入的基本流程&#xff0c;主要是 CommonJS 模塊加載機制&#xff08;即使用 require()&#xff09;的內部執行步驟。下面我用清晰的結構給你梳理一下這個過程&#xff1a; ? Node.js 模塊導入的基本流程&#xff08;使用 require()&#xff09; const someModu…

n8n 中文系列教程_02. 自動化平臺深度解析:核心優勢與場景適配指南

在低代碼與AI技術深度融合的今天&#xff0c;n8n作為開源自動化平臺正成為開發者提效的新利器。本文深度剖析其四大核心技術優勢——極簡部署、服務集成、AI工作流與混合開發模式&#xff0c;并基于真實場景測試數據&#xff0c;厘清其在C端高并發、多媒體處理等場景的邊界。 一…

【C++ Qt】信號和槽(內配思維導圖 圖文并茂 通俗易懂)

每日激勵&#xff1a;“不設限和自我肯定的心態&#xff1a;I can do all things。 — Stephen Curry” 緒論?&#xff1a; 本章是Qt中的第三章&#xff0c;也是我們理解Qt中必備的點 信號槽&#xff0c;它本質由信號和槽兩個來實現&#xff0c;其中將細致的講述如何自定義信號…

【項目】基于MCP+Tabelstore架構實現知識庫答疑系統

基于MCPTabelstore架構實現知識庫答疑系統 整體流程設計&#xff08;一&#xff09;Agent 架構&#xff08;二&#xff09;知識庫存儲&#xff08;1&#xff09;向量數據庫Tablestore&#xff08;2&#xff09;MCP Server &#xff08;三&#xff09;知識庫構建&#xff08;1&a…

免費將靜態網站部署到服務器方法(僅支持HTML,CSS,JS)

原視頻鏈接&#xff1a;把HTML免費部署到網站上&#xff0c;實現別人也能訪問的教程來啦QAQ_嗶哩嗶哩_bilibili 注意&#xff1a;僅支持HTML、CSS、JS。不支持Vue等框架。 1.打開網站www.wordpress.org 點擊紅框按鈕 點擊紅框按鈕下載wordpress模板文件并解壓。 將自己編寫的…

游戲引擎學習第235天:在 Windows 上初始化 OpenGL

奇怪有問題 之前沒注意到 這個問題是Count 0 GlobalConstants_Renderer_UsedDebugCamer 打開的話會有Bug Count是零的話就不讓排序了 game.h: 查閱 TODO 列表 大家好&#xff0c;歡迎來到 game Hero&#xff0c;這是一檔我們在直播中一起編寫完整游戲的節目。不幸的是&a…

使用eCharts繪制中國地圖

eCharts官網&#xff1a;https://echarts.apache.org/zh/index.html 1. 首先新建一個html頁面&#xff0c;并引入echarts <html lang"en"><head><meta charset"UTF-8" /><meta name"viewport" content"widthdevice-…

Linux與Anaconda環境部署與管理(運維交接)

文章目錄 一、前言二、Linux基礎命令三、進程管理與監控四、后臺任務與服務管理五、Anaconda環境管理六、JAR包的運行與管理七、網絡與端口映射八、安全與權限管理九、故障排查與日志分析十、附錄 一、前言 本文將詳細介紹Linux系統下的常用命令以及Anaconda環境管理&#xff…

php:實現壓縮文件上傳、解壓、文件更名、刪除上傳臨時文件、存入數據庫等操作

一、效果圖 1.上傳文件 2.壓縮包文件 3.itemno1文件 二層結構 或 三層結構 4.上傳到系統路徑\ItemNo 5.更名后的itemno1文件(命名:當天日期+六位隨機數) 二、普通實現 1、內容介紹 含有兩種結構 二層結構:zip->料號文件夾->料號文件三層結構:zip->總文件夾-&g…

基于大語言模型的減肥健身計劃系統設計與實現

基于大語言模型的減肥健身計劃系統設計與實現 【包含內容】 【一】項目提供完整源代碼及詳細注釋 【二】系統設計思路與實現說明 【三】功能演示與部署指南 【技術棧】 ①&#xff1a;系統環境&#xff1a;Python 3.x Django 4.2 ②&#xff1a;開發環境&#xff1a;Web服務…

c#開發大沖鋒游戲登錄器

1 前言 本文主要分享登錄器的簡要開發過程&#xff0c;只適合小白選手&#xff0c;高手請自動避讓。 此項目是復刻大沖鋒計劃中的子集。 &#xff08;注&#xff1a;大沖鋒是迅雷代理的一款次時代多職業第一人稱FPS射擊游戲&#xff0c;目前已經關服嗝屁。&#xff09; 2 …

Linux[基礎指令][2]

Linux[基礎指令][2] cp(復制) 格式:cp [-rf] 源文件 {普通文件,目錄} 拷貝 cp -r 遞歸拷貝目錄 藍色為目錄,白色為具體文件 拷貝后面加一個不存在的文件會新建文件再拷貝 cp -ir -i是覆蓋的時候詢問 如果目標文件存在就會覆蓋原有文件 mv(重命名/剪切) 格式:mv 源文件…

React18+ 項目搭建-從初始化、技術選型到開發部署的全流程規劃

搭建一個 React 項目需要從項目初始化、技術選型到開發部署的全流程規劃。以下是詳細步驟和推薦的技術棧&#xff1a; 一、項目初始化 1. 選擇腳手架工具 推薦工具&#xff1a; Vite&#xff08;現代輕量級工具&#xff0c;支持 React 模板&#xff0c;速度快&#xff09;&am…

人工智能學習框架完全指南(2025年更新版)

一、核心框架分類與適用場景 人工智能框架根據功能可分為深度學習框架、機器學習框架、強化學習框架和傳統工具庫,以下是主流工具及選型建議: 1. 深度學習框架 (1)PyTorch 核心優勢:動態計算圖、靈活性強,適合科研與快速原型開發,支持多模態任務(如NLP、CV) 。技術生…

MySQL 詳解之事務管理

MySQL 詳解之事務管理 在數據庫領域,事務是一個核心概念,它確保了數據操作的可靠性和一致性。尤其是在處理涉及多個步驟且必須全部成功或全部失敗的業務場景時,事務更是不可或缺。本篇文章將深入探討 MySQL 中的事務管理,幫助您全面理解事務的工作原理及其在實際應用中的重…