當(dāng)前位置:首頁 > 學(xué)習(xí)資源 > 講師博文 > 嵌入式必學(xué)(git代碼托管常用命令大全)
Git簡介
Git是目前世界上最先進(jìn)的分布式版本控制系統(tǒng)(沒有之一)。
Git是 Linus Torvalds 為了幫助管理 Linux 內(nèi)核開發(fā)而開發(fā)的一個開放源碼的版本控制軟件
對于任何一個文件,在 Git 內(nèi)部只有四種狀態(tài):未跟蹤untracked,已提交 (committed), 已修改(modified)和已暫存(staged)。
(1)已修改(modified) :表示修改了某個文件,但還沒有提交給暫存區(qū)。
(2)已暫存(staged) :表示把已修 改的文件放在下次提交時要保存的清單中。
(3)已提交(committed) :表示該文件已經(jīng)被安全地保存在倉庫中了。
(4)未跟蹤(untracked):對于沒有加入Git控制的文件。
Git 工作區(qū)、暫存區(qū)和版本庫
工作區(qū):就是你在電腦里能看到的目錄。
暫存區(qū):英文叫 stage 或 index。一般存放在 .git 目錄下的 index 文件(.git/index)中,所以我們把暫存區(qū)有時也叫作索引(index)。
版本庫:工作區(qū)有一個隱藏目錄 .git,這個不算工作區(qū),而是 Git 的版本庫。
一、安裝Git
在linux下在線下載安裝git
命令:sudo apt-get install git
Git 常用的是以下 6 個命令:git clone、git push、git add 、git commit、git checkout、git pull
workspace:工作區(qū)
staging area:暫存區(qū)/緩存區(qū)
local repository:版本庫或本地倉庫
remote repository:遠(yuǎn)程倉庫
二、創(chuàng)建版本庫
第一步:添加git用戶:
sudo adduser git
sudo passwd git
第二步:修改密碼文件:
sudo vim /etc/passwd
git:x:1005:1005::/home/git:/usr/bin/git-shell
第三步:安裝sshd服務(wù):
sudo apt-get install openssh-server
第四步:創(chuàng)建git倉庫:
創(chuàng)建一個新文件夾,進(jìn)入(打開),然后執(zhí)行 git init 以創(chuàng)建新的 git 倉庫
git init
第五步:克隆倉庫
我們使用 git clone 從現(xiàn)有 Git 倉庫中拷貝項目(類似 svn checkout)。
克隆倉庫的命令格式為:
git clone <repo>
如果我們需要克隆到指定的目錄,可以使用以下命令格式:
git clone <repo> <directory>
參數(shù)說明:
repo:Git 倉庫。
directory:本地目錄。
三、建立分支
避免直接在 main 或 master 分支上進(jìn)行開發(fā),通常會創(chuàng)建一個新的分支:
1.查看分支:
git branch 顯示本地分支
git branch -r 顯示遠(yuǎn)程分支
git branch -a 顯示所有本地和遠(yuǎn)程分支
git branch -v 顯示當(dāng)前分支的信息和最近提交信息
2. 創(chuàng)建新分支:
git checkout -b <new-branchname> 創(chuàng)建一個新分支并切換到該分支
git branch <branchname> 創(chuàng)建一個新分支但不自動切換
3.切換分支:
git checkout <branchname> 切換到一個已經(jīng)存在的本地分支
4.刪除分支:
git branch -d <branchname> 刪除已合并的本地分支
git branch -D <branchname> 強(qiáng)制刪除本地分支,不論是否合并
5.重命名分支:
git branch -m <oldname> <newname> 重命名本地分支
6.比較分支:
git diff <branch1> <branch2>
7.合并分支:
git merge <branchname> 將branchname分支的更改合并到當(dāng)前分支
四、文件添加和刪除
在工作目錄中進(jìn)行代碼編輯、添加新文件或刪除不需要的文件。
將修改過的文件添加到暫存區(qū),以便進(jìn)行下一步的提交操作:
git add xxx.c
git add xxx.h
git add . 或者添加所有修改的文件
1.查看狀態(tài):
git status
2.文件提交
git commit 將暫存區(qū)內(nèi)容添加到倉庫中。
git commit –m “you comments” 將暫存區(qū)的更改提交到本地倉庫,并添加提交信息
3.查看提交記錄:
git log
4.查看差別:
git diff
5.撤銷修改:
git checkout
6.刪除文件:
git rm <filenname>
7.拉取最新更改(pull文件):
git pull --rebase
8.推送更改(push文件):
git push origin <branchname> 將本地的提交推送到遠(yuǎn)程倉庫
五、版本回退
用于重置暫存區(qū)的文件與上一次的提交(commit)保持一致,工作區(qū)文件內(nèi)容保持不變:
git reset 指定版本
撤銷工作區(qū)中所有未提交的修改內(nèi)容,將暫存區(qū)與工作區(qū)都回到上一次版本,并刪除之前的所有信息提交:
git reset –hard 指定版本