關于github使用總結

文章目錄

  • 一、本地使用git
    • (一)創建一個新的本地Git庫
      • 首先在本地創建一個新的git倉庫
      • 然后進行一次初始提交
      • 提交過后就可以查看提交記錄
    • (二)在本地倉庫進行版本恢復
      • 先執行 git log 查看項目提交歷史
      • 使用 git checkout 恢復版本
  • 二、常用命令
      • 1. 查看當前分支
      • 2. 切換分支
      • 3. git暫存緩沖區
  • 三、使用過程中的問題總結
      • 1. 在git倉庫中再次對其中一個子文件夾執行了git init
      • 2. 撤回上次推送到服務器的提交
      • (1)git revert
        • (2) git reset
      • 3. git推送失敗:本地分支與遠端分支存在分歧

一、本地使用git

(一)創建一個新的本地Git庫

首先在本地創建一個新的git倉庫

git init
  • 注:這個命令會在當前目錄下創建一個隱藏的.git文件夾,這個文件夾就是 Git 用來存儲版本控制信息的地方

然后進行一次初始提交

創建一個初始文件 readme.md,將其添加到暫存區

touch readme.md
git add readme.md

然后執行下述命令進行一次初始提交

git commit -m "Initial commit"
  • 注:雙引號中的內容是提交信息,用于簡要描述本次提交的內容、目的或相關說明

此時就會在本地倉庫中創建一個初始版本記錄,表明項目的初始狀態已被保存下來

提交過后就可以查看提交記錄

git log

(二)在本地倉庫進行版本恢復

先執行 git log 查看項目提交歷史

在這里插入圖片描述

使用 git checkout 恢復版本

執行下述命令恢復到特定的版本

git checkout a1b2c3d4e5f6g7h8

工作目錄就會被更新為該提交時的狀態,包括文件內容、文件結構等

恢復分支到它的上一個已知的好的狀態,使用 git checkout [分支名]

git checkout master

會將工作目錄和索引更新為master分支的最新狀態。

二、常用命令

1. 查看當前分支

git branch

打開終端,輸入 git branch 命令。這會列出所有的分支,當前所在的分支前面會有一個星號(*)標記。

git status

輸出會包含一行顯示當前分支的信息

2. 切換分支

git checkout <分支名>

3. git暫存緩沖區

將當前的修改存入緩沖區
git stash從緩沖區中取出
git stash pop

三、使用過程中的問題總結

1. 在git倉庫中再次對其中一個子文件夾執行了git init

這會形成一種嵌套倉庫的情況
如果內部文件夾只是被錯誤地執行了git init,還沒有進行實質性的版本控制操作(如沒有添加文件、沒有提交等),可以直接刪除內部文件夾中的.git文件夾

2. 撤回上次推送到服務器的提交

(1)git revert

git revert <commit-id><commit-id> 為你想要撤銷的提交的哈希值。

創建一個新的提交,這個提交是對之前提交的撤銷。

操作流程:

git log
git revert <commit-id>
git push origin <branch-name>
(2) git reset

這種方法會修改提交歷史

操作流程:

查看提交記錄
git log撤銷提交,但保留工作目錄和暫存區的更改。
git reset --soft <commit-id><commit-id> 為你想要回退到的提交的哈希值。撤銷提交和暫存區的狀態,保留工作目錄的更改(默認選項)
git reset --mixed <commit-id>完全撤銷提交,包括工作目錄、暫存區和歷史記錄的更改
git reset --hard <commit-id>將本地的更改強制推送到遠程分支
git push -f origin <branch-name><branch-name> 為你的分支名稱

3. git推送失敗:本地分支與遠端分支存在分歧

	git pull --no-rebase合并兩個分支git push

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

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

相關文章

【Python】Python 單例模式 8 大核心應用場景深度解析(2025 新版)

單例模式&#xff08;Singleton Pattern&#xff09;作為一種經典的設計模式&#xff0c;始終保持著重要的工程價值。 本文著重于單例模式的主要核心應用場景。 至于實現方法&#xff0c; 晚些時候發出。 一、配置管理器 全局配置信息管理是單例模式最典型的應用場景。通過單…

計算機網絡網絡層(下)

一、互聯的路由選擇協議&#xff08;網絡層控制層面內容&#xff09; &#xff08;一&#xff09;有關路由選擇協議的幾個概念 1.理想的路由算法 &#xff08;1&#xff09;理想路由算法應具備的特點&#xff1a;算法必須正確和完整的&#xff0c;算法在計算上應簡單&#x…

云存儲桶的“公開陷阱”|滲透測試中如何利用與防御配置錯誤的存儲服務

引言 云存儲服務&#xff08;如AWS S3、阿里云OSS、Google Cloud Storage&#xff09;因便捷性被企業廣泛使用&#xff0c;但權限配置錯誤卻成為近年來數據泄露的重災區。 攻擊者無需復雜漏洞&#xff0c;僅需一個公開鏈接即可下載敏感數據。本文將深入解析這類漏洞的滲透…

BitMart合約交易體驗 BitMart滑點全賠的底層邏輯

美國新澤西州澤西市&#xff0c;2025年5月13日 – BitMart&#xff0c;全球領先的數字資產交易平臺&#xff0c;推出了其開創性的滑點保護計劃&#xff0c;旨在解決加密市場中最具挑戰性且常常被忽視的風險之一&#xff1a;滑點。該計劃為交易者提供了在 USDT 保證金永續合約交…

高海拔和遠距離的人員識別:面部、體型和步態的融合

大家讀完就覺得有幫助記得關注和點贊&#xff01;&#xff01;&#xff01; 摘要 我們解決了在無約束環境中進行全身人體識別的問題。這個問題出現在諸如IARPA高空和遠距離生物識別與身份識別&#xff08;BRIAR&#xff09;計劃等監視場景中&#xff0c;其中生物識別數據是在長…

Docker 常見問題及其解決方案

一、安裝與啟動問題 1.1 安裝失敗 在不同操作系統上安裝 Docker 時&#xff0c;可能會出現安裝失敗的情況。例如&#xff0c;在 Ubuntu 系統中&#xff0c;執行安裝命令后提示依賴缺失。這通常是因為軟件源配置不正確或系統缺少必要的依賴包。 解決方案&#xff1a; 確保系統…

影響力最小化

這里寫目錄標題 影響力最大化**創新點**參數設置 影響力最小化傳播模型該文獻和Budak的有什么不同呢a Linear Threshold model with One Direction state Transition (LT1DT)具體模型 影響力最大化 以INFORMS Journal on Computing為例《The Impact of Passive Social Media Vi…

【IDEA】注釋配置

1. IDEA注釋調整&#xff0c;去掉默認在第一列顯示 修改為如下&#xff1a; 2. IDEA中修改代碼中的注釋顏色

一文了解 HTTP Content-Type:從基礎到實戰

一文了解 HTTP Content-Type&#xff1a;從基礎到實戰 在 Web 開發中&#xff0c;HTTP 請求頭中的 Content-Type 是一個看似簡單卻至關重要的概念。它決定了瀏覽器和服務器如何解析和處理傳輸的數據。本文將帶你全面掌握 Content-Type 的核心知識&#xff0c;涵蓋常見類型、應…

兔子隊列?RabbitMQ詳解(1)

引入 首先先介紹一下什么是 RabbitMQ 的意思:Rabbit 是一個公司的名稱,MQ 是 message queue (消息隊列)的縮寫,而 RabbitMQ 是 Rabbit 企業下的一個消息隊列產品,是一個采用Erlang語言實現AMQP(Advanced Message Queuing Protocol,高級消息隊列協議)的消息中間件,它最初…

某智能家電龍頭,社招 校招全面應用 AI 面試的創新實踐

某智能家電龍頭在競爭中憑借創新能力和高品質服務穩居市場前列&#xff0c;為更好地賦能業務&#xff0c;集團招聘總監著力構建數字化招聘流程&#xff0c;率先引入 AI 面試實現招聘智能化升級&#xff0c;減輕 HR 負擔、提升效率&#xff0c;優化候選人體驗&#xff0c;達成雙…

STM32 實時時鐘(RTC)詳解

一、RTC 簡介 RTC&#xff08;Real Time Clock&#xff09;即實時時鐘&#xff0c;本質上是一個 32 位的秒級計數器&#xff1a; 最大計數值為 4294967295 秒&#xff0c;約合 136 年&#xff1a; 復制編輯 4294967295 / 60 / 60 / 24 / 365 ≈ 136 年 RTC 初始化時&#x…

《AI驅動的智能推薦系統:原理、應用與未來》

一、引言 在當今信息爆炸的時代&#xff0c;用戶面臨著海量的信息選擇&#xff0c;從購物平臺上的商品推薦到流媒體服務中的影視推薦&#xff0c;智能推薦系統已經成為我們日常生活中不可或缺的一部分。AI驅動的智能推薦系統通過分析用戶的行為和偏好&#xff0c;為用戶提供個性…

Django + Celery 打造企業級大模型異步任務管理平臺 —— 從需求到完整實踐(含全模板源碼)

如需完整工程文件(含所有模板),可回復獲取詳細模板代碼。 面向人群:自動化測試工程師、企業中后臺開發人員、希望提升效率的 AI 業務從業者 核心收獲:掌握 Django 三表關系設計、Celery 異步任務實踐、基礎 Web 交互與前后端分離思路,源碼可直接落地,方便二次擴展 一、系…

創建對象

雖然Object構造函數或對象字面量可以方便地創建對象,但這些方式也有明顯不足: 創建具有同樣接口的多個對象需要重復編寫很多代碼 1.工廠模式 工廠模式是一種眾所周知的設計模式,廣泛應用于軟件工程領域,用于抽象創建特定對象的過程 function createPerson(name,age){let…

深度理解指針(2)

&#x1f381;個人主頁&#xff1a;工藤新一 &#x1f50d;系列專欄&#xff1a;C面向對象&#xff08;類和對象篇&#xff09; &#x1f31f;心中的天空之城&#xff0c;終會照亮我前方的路 &#x1f389;歡迎大家點贊&#x1f44d;評論&#x1f4dd;收藏?文章 深入理解指…

數據科學和機器學習的“看家兵器”——pandas模塊 之一

目錄 pandas 模塊介紹 4.1 pandas 數據結構 一、課程目標 二、Series 對象介紹 三、DataFrame 對象介紹 四、Series 和 DataFrame 在具體應用中的注意事項 (一)Series 注意事項 (二)DataFrame 注意事項 五、實戰案例 案例 1:學生成績分析 案例 2:銷售數據分析 案例 3:股…

STM32CubeMX HAL庫 串口的使用

1.配置 2.開啟中斷后&#xff0c;生成代碼 3.串口的接收 1&#xff09;.開啟空閑中斷接收 __HAL_UART_ENABLE_IT(huart, UART_IT_IDLE); // 關鍵步驟&#xff1a;啟用空閑中斷 2&#xff09;. 啟動接收 調用 HAL_UARTEx_ReceiveToIdle_IT 啟動異步接收&#xff0c;可以使用…

IIS服務器URL重寫配置完整教程

1.下載URL Rewrite Module 2.1 https://www.iis.net/downloads/microsoft/url-rewrite https://download.microsoft.com/download/1/2/8/128E2E22-C1B9-44A4-BE2A-5859ED1D4592/rewrite_amd64_zh-CN.msi 2.安裝

vite+vue建立前端工程

? 參考 開始 | Vite 官方中文文檔 VUE教程地址 https://cn.vuejs.org/tutorial/#step-1 第一個工程 https://blog.csdn.net/qq_35221977/article/details/137171497 腳本 chcp 65001 echo 建立vite工程 set PRO_NAMEmy-vue-appif not exist %PRO_NAME% (call npm i…