GIT(09)檔案管理

2021-09-13 17:50:52 字數 3633 閱讀 2285

git status

// 結果

on branch bthss_v3.

0.4changes not staged for commit:

(use "git add ..." to update what will be committed)

(use "git checkout -- ..." to discard changes in working directory)

modified: releasenote.txt

untracked files:

(use "git add ..." to include in what will be committed)

test.txt

no changes added to commit (use "git add" and/or "git commit -a"

)

git status 

git status test.txt

on branch bthss_v3.

0.4untracked files:

(use "git add ..." to include in what will be committed)

test.txt

nothing added to commit but untracked files present (use "git add" to track)

git add:新增檔案到暫存區

git add // 預設新增所有

git add

// 新增單個檔案

git add -a // 表示新增所有內容

git add .

// 表示新增新檔案和編輯過的檔案不包括刪除的檔案

git add u // 表示新增編輯或者刪除的檔案,不包括新新增的檔案

git add -a .

// 一次新增所有改變的檔案

git commit:提交檔案到本地庫

git commit

git commit

git commit -m "message"

// -m 指定提交時的注釋,上面兩種會開啟vim編輯器來編輯提交注釋

git commit -a -m "massage"

// -a 跳過git add新增到暫存區步驟就可以提交

git push:提交檔案到遠端倉庫 (會將commited的檔案都提交)

git push 《遠端主機名》

《本地分支名》:《遠端分支名》

// 例子:將本地的master分支推送到遠端主機origin上的對應master分支, origin 是遠端主機名,第乙個master是本地分支名,第二個master是遠端分支名。

git push origin master:refs/

for/master

// 遠端分支被省略,將本地分支推送到與之存在追蹤關係的遠端分支(通常兩者同名);如果該遠端分支不存在,則會被新建

git push origin master

// 省略本地分支名,則表示刪除指定的遠端分支;等同於推送乙個空的本地分支到遠端分支,等同於 git push origin --delete master

git push origin :refs/

for/master

// 本地分支和遠端分支都省略,將當前分支推送到origin主機的對應分支;前提是本地分支和遠端分支存在追蹤關係

git push origin

// 遠端只有乙個分支,可全省略;

git push

git clean:撤銷未追蹤(untracked)狀態

git clean -f  // untracked狀態,撤銷新增的檔案

git clean -df // untracked狀態,撤銷新增的檔案和資料夾

git checkout:撤銷已修改,未暫存狀態

git checkout  // 撤銷專案下所有的修改

git checkout .

// 撤銷當前資料夾下所有的修改

git checkout xx/xx.txt xx/xx2.txt // 撤銷某幾個檔案的修改

git reset:撤銷已暫存,已提交狀態

git reset

git reset --mixed // 與git reset等價,回到已修改狀態,只保留原始碼,回退commit和add資訊;即撤銷本地倉庫、暫存區,保留工作區

git reset --soft // 回到某個版本,修改的內容仍然在工作區和暫存區中;撤銷的是本地倉庫,保留的是工作區和暫存區

git reset --hard // 回到未修改狀態,清空暫存區、工作區以及本地倉庫

git reset --hard origin/master // 回退與本地遠端倉庫一致

git reset --hard head^

// 回退到本地倉庫上乙個版本;同 head~1

git reset --hard

// 回退到任意版本

git revert:功能類似git reset

git revert head // 撤銷前一次 commit

git revert head^

// 撤銷前前一次 commit

git pull:一步式獲取更新

// 命令格式

git pull 《遠端主機名》

《遠端分支名》

:《本地分支名》

// 例如:

git pull origin master:brantest

//省略本地分支,表示當前分支

git pull origin master

// 省略所有,表示對應遠端分支,更新本地分支

git pull

git fetch + git merge:兩步式獲取更新

// git fetch 用法與 git pull 相同

git fetch

git merge 《本地分支名》

git rm 

// 配合 commit push 刪除本地倉庫和遠端倉庫

git rm --cached  // 配合 commit push 刪除本地倉庫和遠端倉庫;
git diff 

// 工作區與暫存區比較

git diff --cached

// 顯示暫存區和本地倉庫的差異

git diff

// 比較2個分支之間的差異

git diff master origin/master

// 檢視本地倉庫與本地遠端倉庫的差異

git log  // 按提交時間列出所有的更新,最近的更新排在最上面

git log -p -

2// -p 顯示內容差異, -2顯示最近兩次的提交

linux亦步亦趨 09 檔案許可權管理

chmod change file access permissions 命令格式 chmod 檔名或目錄名大括號裡面的引數表示必選引數豎線隔開表示必選其中乙個或多個。我們拆開來解釋一下chmod的用法 舉幾個例子說明一下 root localhost etc ls l hosts rw r r x...

Python 09 檔案處理

with 語句 總結檔案是儲存在計算機儲存裝置上的一些資訊或資料。通常把檔案分為兩類,文字檔案和二進位制檔案。文字檔案是簡單的文字,二進位制檔案包含了只有計算機可讀的二進位制資料。檔案開啟與關閉 檔案讀取與寫入 使用 open 函式開啟檔案。它需要兩個引數,第乙個引數是檔案路徑或檔名,第二個是檔案的...

5 檔案管理

1 檔案的基本概念 在unix linux系統中,幾乎所有的一切都可以看作檔案,因此,對於檔案的操作適用於各種輸入輸出裝置等等,當然目錄也可以看作檔案 如 dev null 空裝置 echo hello dev null 表示丟棄處理的結果 cat dev null a.txt 表示清空檔案a.tx...