【雜記二】git, github, vscode等

一、前言

暫時空著...

二、git

2.1 可能的疑問

1. VSCode 項目名和 GitHub 倉庫名是否需要一致?

不需要一致。 VSCode 項目名(也就是你本地的文件夾名字)和 GitHub 倉庫名可以不一樣。 Git 是一個分布式版本控制系統,它主要關注的是你本地倉庫與遠程倉庫之間的連接和同步,而不是文件夾的名字。

  • 沒有直接影響。 你可以正常地將本地倉庫連接到任何遠程 GitHub 倉庫,無論名字是否相同。

  • 建議保持一致以方便管理。 為了方便自己和其他協作者理解項目,建議盡量讓本地項目文件夾名和 GitHub 倉庫名保持一致。 這樣可以更容易地從文件夾名字就能判斷出對應的 GitHub 倉庫,尤其是在你同時管理多個項目的時候。

2. origin 是什么?可以寫成其他的嗎?

  • rigin 是遠程倉庫的別名 (alias)。 當你運行 git remote add origin <repository_url> 的時候,origin 就代表了你指定的遠程倉庫的 URL。

  • origin 可以寫成其他的名字。 你可以選擇任何你喜歡的名字作為遠程倉庫的別名。 比如,你可以將遠程倉庫命名為 githubupstreamremote 等等。

  • 如何更改遠程倉庫的別名?

    • 重命名已存在的遠程倉庫: git remote rename origin <new_name>

      • 例如: git remote rename origin github

    • 添加遠程倉庫時使用其他名字: git remote add <new_name> <repository_url>

      • 例如: git remote add github https://github.com/your_username/your_repo.git

  • origin 的約定俗成:

    • 雖然你可以隨意命名,但是 origin 已經成為一種約定俗成的做法。 大多數開發者都習慣使用 origin 來代表主要的遠程倉庫,特別是你 fork 別人的項目后,會再添加一個 upstream 指向原始倉庫,方便同步更新。

三、Github

3.1?初始化 Git 倉庫

  • 打開 VSCode 的終端 (View -> Terminal)。

  • 運行 git init 命令。 這將在你的項目目錄中創建一個新的 Git 倉庫。

3.2?將本地倉庫連接到 GitHub 倉庫

  • 復制你剛在 GitHub 上創建的倉庫的 HTTPS 或 SSH URL。 你可以在 GitHub 倉庫頁面的 "Code" 按鈕下找到這個 URL。

  • 在 VSCode 終端中運行 git remote add origin <your_repository_url> 命令,將 <your_repository_url> 替換為你復制的 URL。 例如:

git remote add origin https://github.com/your_username/your_private_repo.git

3.3?將代碼上傳到 GitHub

1.?添加文件到暫存區
  • 在 VSCode 中創建你的項目文件 (例如:main.py, index.html 等)。

  • 運行 git add . 命令將所有文件添加到暫存區。 或者,你可以使用 VSCode 的 "Source Control" 視圖中的 "+" 按鈕來添加單個文件。

2.?提交更改

運行 git commit -m "Initial commit" 命令提交你的更改。 將 "Initial commit" 替換為描述本次提交的更有意義的消息。

3. 查詢本地分支的名字

git brach

如果是* master,

git branch -m master main

變成 *main

4.?推送到 GitHub

運行 git push -u origin main 命令將你的本地倉庫推送到 GitHub 倉庫。

  • -u 選項設置 upstream tracking,這樣以后你只需要運行 git push 就可以推送更改了。

  • origin 是你遠程倉庫的名稱(通常是 "origin",你之前使用 git remote add 命令設置的)。

  • main 是你想要推送到的分支名稱(通常是 "main" 或 "master")。

  • 你可能會被要求輸入你的 GitHub 用戶名和密碼

該錯誤表示遠程分支 main 具有本地分支沒有的提交。您有兩個主要選項:

首先合并遠程更改:

遠程倉庫已經存在 main 分支,但是你的本地倉庫和遠程倉庫的代碼不同步。 錯誤提示 Updates were rejected because the remote contains work that you do not have locally. 意味著遠程倉庫 main 分支上有一些你本地倉庫沒有的提交。

5. 遠程更改拉取到本地分支中,必要時解決任何沖突,然后推送:
git pull origin main
git push -u origin main

git pull origin main --allow-unrelated-histories

強制推送(如果您打算覆蓋遠程分支):

如果你確定你的本地分支應該完全替換遠程分支(注意:這將丟棄遠程提交),你可以強制推送:

git push -u origin main --force

6. 拉取到本地
git clone github_project_repository_url

3.3 git 如何排除一些上傳的folder, files

例如, 有個很大的數據集, 有logs 文件,等等, 你不想上傳

1.?使用 .gitignore 文件排除文件夾:

.gitignore 文件用于指定 Git 應該忽略的文件和文件夾。 這是排除文件夾的最佳方法,尤其是在你不想將這些文件夾上傳到遠程倉庫時。

步驟:

  1. 在項目根目錄中創建 .gitignore 文件:
    如果你的項目根目錄中還沒有 .gitignore 文件,請創建一個。 你可以使用 VSCode 創建一個新文件,并將其命名為 .gitignore

  2. 編輯 .gitignore 文件:
    .gitignore 文件中,添加你想要忽略的文件夾的名稱,每行一個。 例如,如果你想要忽略名為 venvdata 的文件夾,你的 .gitignore 文件應該如下所示:

venv/
data/

  • 請注意,venv/ 末尾的斜杠表示這是一個目錄。

  • 你也可以使用通配符來匹配多個文件夾或文件。例如,*.log 會忽略所有以 .log 結尾的文件。

3.?VS Code 支持 .gitignore

在 VS Code 中,你可以右鍵單擊要排除的文件或文件夾,然后選擇 "Add to .gitignore"。VS Code 將自動將該文件或文件夾添加到 .gitignore 文件中。

4.?保存 .gitignore 文件。

5.?將更改添加到 Git(可選)

git add .gitignore

這會將 .gitignore 文件添加到暫存區,以便 Git 跟蹤它。 如果你不想跟蹤 .gitignore 文件,可以跳過這一步。

?6.?提交更改:

git commit -m "Add .gitignore file"

7. 清除 Git 緩存 (如果之前已經添加了要忽略的文件):

如果你在添加 .gitignore 文件之前已經將要忽略的文件添加到了 Git 的暫存區,你需要先清除 Git 的緩存,然后再提交更改。運行:

git rm -r --cached .
git add .
git commit -m "Remove cached files and add .gitignore"
  • git rm -r --cached .:從暫存區中刪除所有文件,但保留本地文件。

  • git add .:重新添加所有未被忽略的文件到暫存區。

3.4 可能的問題

1.?"'origin' does not appear to be a git repository"

“origin”似乎不是 Git 存儲庫 fatal:無法從遠程存儲庫讀取。

檢查remote origin 是否存在

git remote -v

如果您沒有看到 輸出 ,則表示 origin is not set.

添加remote origin

your repository is https://github.com/github-user/user_project.git, add it as origin:

git remote add origin https://github.com/github-user/user.git

驗證是否添加成功

git remote -v## 預期輸出: 
origin  https://github.com/github-user/user.git (fetch)
origin  https://github.com/github-user/user.git (push)

2.?“fatal: refending to merge unrelated histories”

“Updates was rejected because the tip of your current branch is behind its remote counterport” 表示您的本地倉庫和遠程倉庫具有單獨的提交歷史記錄。

允許不相關的歷史記錄

由于你的本地倉庫與遠程倉庫的歷史記錄不同,請強制 Git 合并它們:

git pull origin main --allow-unrelated-histories

成功合并后,推送您的更改

git push -u origin main

如果推送再次被拒絕,則強制推送:

git push -u origin main --force

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

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

相關文章

數學愛好者寫的編程系列文章

作為一個數學愛好者&#xff0c;我大學讀的專業卻不是數學專業&#xff0c;而是跟計算機有關的專業。原本我對編程一竅不通&#xff0c;平時上課也是在看數學文獻&#xff0c;作業基本靠同學&#xff0c;考試及格就行。不過后來因為畢業的壓力&#xff0c;我還是擁抱編程了&…

FPGA 以太網通信(四)網絡視頻傳輸系統

一、網絡視頻傳輸系統 網絡視頻傳輸系統使用ov5640攝像頭采集數據&#xff0c;通過組件UDP幀將視頻數據實時傳輸給上位機。 ov5640視頻傳輸帶寬 像素分辨率設為640x480&#xff0c;幀率設為60幀&#xff0c;像素格式為RGB565&#xff0c;傳輸帶寬為 640 x 480 x 16bit x 60 fps…

[leetcode]1631. 最小體力消耗路徑(bool類型dfs+二分答案/記憶化剪枝/并查集Kruskal思想)

題目鏈接 題意 給定 n m n\times m nm地圖 要從(1,1) 走到 (n,m) 定義高度絕對差為四聯通意義下相鄰的兩個點高度的絕對值之差 定義路徑的體力值為整條路徑上 所有高度絕對差的max 求所有路徑中 最小的路徑體力值是多少 方法1 這是我一開始自己寫的記憶化剪枝 比較暴力 時…

DeepSeek寫打臺球手機小游戲

DeepSeek寫打臺球手機小游戲 提問 根據提的要求&#xff0c;讓DeepSeek整理的需求&#xff0c;進行提問&#xff0c;內容如下&#xff1a; 請生成一個包含以下功能的可運行移動端打臺球小游戲H5文件&#xff1a; 要求 可以重新開始游戲 可以暫停游戲 有白球和其他顏色的球&am…

webpack使用詳細步驟

項目描述 本項目 webpack 的基本使用。 webpack 官方&#xff1a;https://webpack.docschina.org/concepts/ Element-plus 官方&#xff1a;https://element-plus.sxtxhy.com/zh-CN/ Vue3 官方&#xff1a;https://cn.vuejs.org/ 項目組成明細 每個步驟完成后重新執行 npm run …

【STM32實物】基于STM32的太陽能充電寶設計

基于STM32的太陽能充電寶設計 演示視頻: 基于STM32的太陽能充電寶設計 硬件組成: 系統硬件包括主控 STM32F103C8T6、0.96 OLED 顯示屏、蜂鳴器、電源自鎖開關、溫度傳感器 DS18B20、繼電器、5 V DC 升壓模塊 、TB4056、18650鋰電池、9 V太陽能板、穩壓降壓 5 V三極管。 功能…

【記一次】AI微調訓練步數計算方式

llama微調訓練步數計算方式,以下數據為假設 一、關鍵參數解析 總樣本數&#xff1a;Num examples 1,047 表示訓練數據集包含 1,047 個樣本。 訓練輪數&#xff1a;Num Epochs 300 表示整個訓練集將被遍歷 300 次。 總批次大小&#xff1a;Total train batch size 80 表示…

python-selenium 爬蟲 由易到難

本質 python第三方庫 selenium 控制 瀏覽器驅動 瀏覽器驅動控制瀏覽器 推薦 edge 瀏覽器驅動&#xff08;不容易遇到版本或者兼容性的問題&#xff09; 驅動下載網址&#xff1a;鏈接: link 1、實戰1 &#xff08;1&#xff09;安裝 selenium 庫 pip install selenium&#…

yaffs

YAFFS&#xff08;Yet Another Flash File System&#xff09;是專為NAND閃存設計的日志結構文件系統&#xff0c;其核心原理圍繞NAND閃存的特性優化數據管理。以下是其關鍵原理的詳細說明&#xff1a; 1. NAND閃存適配 寫入限制&#xff1a;NAND閃存需按頁寫入&#xff08;通…

git的底層原理

git的底層原理 三段話總結git&#xff0c; 1. 工作原理&#xff1a;git管理是一個DAG有向無環圖&#xff0c;HEAD指針指向branch或直接指向commit&#xff0c;branch指向commit&#xff0c;commit指向tree&#xff0c;tree指向別的tree或直接指向blob。 2. git所管理的一個目錄…

【計算機網絡原理】選擇題+簡答題

文章目錄 選擇題網絡基礎IP網絡拓撲 OSI七層模型協議HDLCTCP/IP 交換技術網絡安全數字簽名 算法與策略 簡答題UDPTCP 選擇題 網絡基礎 下列域名中&#xff0c;屬于國際頂級域名的是&#xff08;&#xff09; A. us B. tom C. edu D. int 下列關于光纖傳輸介質的敘述中錯誤的是…

Android數據加密方案

Android數據加密方案 前言 在移動應用開發中,數據安全是一個永恒的話題。Android應用中往往需要存儲和傳輸敏感數據,如用戶密碼、支付信息、個人隱私等。本文將深入介紹Android平臺上的數據加密方案,幫助開發者構建安全可靠的數據保護機制。 基礎知識 1. 加密算法分類 …

神聖的綫性代數速成例題13. 非齊次方程組解的性質、非齊次方程組解的討論

綫性空間的維數&#xff1a; 若綫性空間中存在一組綫性無關的矢量&#xff0c;使得中的任意矢量 都可以由綫性表示&#xff0c;則稱為綫性空間的維數&#xff0c;記作&#xff0c;稱為的一組基。 基與座標變換&#xff1a; 設和是維綫性空間的兩組基&#xff0c;且&#xff0c;…

github代理 | 快速clone項目

代理網址&#xff1a; https://ghproxy.com/ https://ghproxy.com/代理網址&#xff1a; https://ghproxy.com/ 比如需要克隆的項目git地址為&#xff1a;https://github.com/AUTOMATIC1111/stable-diffusion-webui.git git clone https://ghproxy.com/https://github.com/AUTO…

Kafka集成Debezium監聽postgresql變更

下載postgres的插件&#xff1a;https://debezium.io/documentation/reference/2.7/install.html 2.7版本支持postgresql12數據庫。 debezium-connector-postgres-2.7.4.Final-plugin.tar.gz 上傳插件并解壓 mkdir /usr/local/kafka/kafka_2.12-2.2.1/connector cd /usr/local…

『uniapp』簡單文本復制文字 富文本內容復制文字(詳細圖文注釋)

目錄 text組件錯誤代碼示例成功代碼總結 歡迎關注 『uniapp』 專欄&#xff0c;持續更新中 歡迎關注 『uniapp』 專欄&#xff0c;持續更新中 text組件 官方文檔可知app端用selectable可實現文本選中進而可復制,也就是說text標簽內部的文本就可以復制了 https://uniapp.dclou…

RestTemplate和RPC區別

RestTemplate是Spring框架中用于進行RESTful風格的HTTP請求的模板類&#xff0c;通常用于與外部服務進行通信。它基于HTTP協議&#xff0c;使用GET、POST、PUT、DELETE等HTTP方法來進行通信&#xff0c;傳輸的數據通常使用JSON或XML格式。它是一種基于資源的通信方式&#xff0…

算法模型從入門到起飛系列——背包問題(探索最大價值的掘金之旅)

文章目錄 前言一、背包問題溯源&#xff08;動態規劃&#xff09;1.1 動態規劃的概念1.2 動態規劃的基本步驟1.3 動態規劃的實際應用 二、背包問題2.1 背包問題衍生2.2 0-1背包2.2.1 0-1背包描述2.2.2 0-1背包圖解2.2.3 0-1背包代碼刨析 2.3 完全背包2.3.1 完全背包描述2.3.2 完…

Python實現爬蟲:天氣數據抓取(+折線圖)

一、基本架構 1、URL管理器&#xff1a;爬蟲的調度中樞 核心職責 功能說明URL去重防止重復抓取URL優先級管理控制抓取順序&#xff08;廣度優先/深度優先&#xff09;斷點續爬支持持久化存儲抓取狀態分布式協同多節點共享URL隊列 2、網頁下載器&#xff1a;數據獲取的引擎 功…

DFS刷題

洛谷P2089烤雞 #include<iostream> using namespace std; const int N 20, M 1000010; int ans[N]; int dp[M][N]; int n, count; void dfs(int x, int sum){if(sum > n)return;if(x > 10){if(sum n){count;for(int i 1; i < n; i)dp[count][i] ans[i];}r…