Git常用操作

2022-02-05 09:22:09 字數 2315 閱讀 3289

一、git結構

1. **倉庫

2. 本地倉庫

二、常用操作

1. unchecked

2. add,新增到暫存區

3. commit, 從暫存區到本地倉庫

4. push,從本地倉庫到遠端倉庫, commit和push的區別

5. gc,打包清理

git生成ssh keys不用每次都輸入使用者名稱,必須用ssh clone

個人資料夾下有gitconfig

git add . 新增當前目錄下檔案到git

git add . --all 遞迴新增本目錄下所有檔案到git

git commit -m "commnet"

git pull 拉取所有分支,對應到相應分支

git branch 顯示本地所有的分支

git branch -a 顯示本地和遠端所有branch

git fetch 拉取所有的分支,只有這樣才能顯示所有的分支, 比如看不到遠端新加的分支,就需要先fetch

git rm --cache */*.iml 刪除檔案,但是保留本地檔案

git status

git tag

git checkout 2.5 切換到tag2.5,因為master分支總是會變化,不穩定

回退** reset vs revert

1. revert

a. 已經commit但還未push

git revert head

b. 已經push

git revert head~1

2. reset

git回退已經commit但是還未push的**

git reset head^ 會退到上個本地版本

git強制回滾已經push的**, 加上hard

git reset --hard head^ 會退到上個本地版本,此時pull**,遠端分支會有衝入,需要merge,或者強制提交

git reset --hard head~3 會退到上3個版本

git reset --hard 1153f149952a87f6aa8846a71f191c1f54afadef(commit id)

強制回滾後提交 

git push origin master --force,把遠端強制更新成跟本地一樣

3. 區別

git revert是用一次新的commit來回滾之前的commit,向前進

git reset是直接刪除指定的commit,向後退

建立分支

git branch develop 新增develop分支

git push origin develop 提交到develop分支,建立本地分支與遠端倉庫的聯絡

git checkout develop 切換到develop分支

git pull origin develop 只拉取develop分支,如果在develop分支,就拉取**;如果在其他分支,就拉取並merge**

git push origin develop 提交**到develop分支

合併分支,把develop分支merge到master

git checkout master

git merge develop

刪除分支

git branch -d develop

git push origin :develop

刪除遠端分支

git branch -r  檢視

git branch -r -d origin/develop

git push origin :develop

更新遠端已經刪除,但未同步到本地的分支 

git remote prune origin

更新遠端分支列表

git remote update origin --prune

新建乙個分支,拉取另乙個分支的某個版本號之前的**

git log 檢視提交版本記錄

git checkout abc

挑選提交

git cherry-pick 12345 只把提交版本號12345拉取過來,而不是整個分支

三、git vs svn

1. svn每個版本只儲存了diff

2. git每個版本儲存了整個檔案,每個版本相當於乙個資料夾

四、git ignore

1. 最好在新建專案的時候,加上.gitignore檔案

2. 如果在新增.gitignore檔案之前,已經push過檔案了,那再次提交時,即使加上了.gitignore,也不生效,可以按照以下步驟解決

參考:

git常用操作

git是一款分布式的版本控制軟體,相比svn,功能更強大,自然而然操作更複雜一些。git在本地也是以git版本庫的形式管理,而svn在本地管理的僅是乙個版本庫的副本。很明顯的乙個不同點 git你可以在本地做一些修改,然後commit到本地的版本庫,最後push到伺服器,而svn只要一commit,更...

Git常用操作

有時候我們需要修改之前提交的時候的說明資訊,沒有操作命令可以直接完成,但是使用rebase命令可以實現。例如我們要修改倒數第二次的提交的說明資訊 git rebase i head 3 注意 這裡head 後面跟著的是3而不是2,因為這裡指的是要修改的提交的父提交。之後會進入到文字編輯介面,如下圖 ...

Git常用操作

這裡記錄目前我最常用的操作。因為是最常用的,就不包括什麼建立倉庫,設定使用者資訊啊,這種設定一次的了。先上一張圖 1.分支管理 檢視本地分支 git branch 檢視所有分支 本地 遠端 git branch a 建立分支 git branch 切換分支 git checkout 建立 切換分支 ...