⑴ Git基本操作
安裝完 Git 軟體後,需要我們做一下全局的配置工作,如:用戶名、郵箱等。
命令:git config
設置用戶名命令:
設置郵箱命令:
其中, --global 指定為全局配置,不指定該參數,則為當前所在倉庫配置。
查看配置:
在本地創建版本庫,需要使用 git init 命令。
首先,我們需要新建一個存放版本庫的文件夾,然後進入到該目錄所在路徑,執行如下命令,格式為:
最後查看文件夾,可以看到包含有 .git 子文件夾,說明創建版本庫成功了。
也可以在執行 git init 命令時指定一個文件夾作為版本庫。格式為:
克隆版本庫是指從現有 Git 版本庫中拷貝項目。
克隆版本庫使用如下命令,格式為:
如果我們需要克隆到指定的目錄,可以使用以下命令格式:
如:克隆遠程倉庫
添加一個或多個文件到暫存區:
添加指定目錄到暫存區,包括子目錄:
添加當前目錄下的所有文件到暫存區:
查看在我們上次提交之後是否有對文件進行再次修改。 格式為:
-s參數可以幫助我們獲得比較簡短的顯示結果。
如:我們在一個版本庫中所在目錄中增加一個 Unit1.pas 文件,然後執行如下命令:
顯示暫存區和工作區的差異:
顯示暫存區和上一次提交(commit)的差異:
顯示兩次提交之間的差異:
將暫存區內容添加到本地倉庫中。
提交暫存區到本地版本庫中:
message 可以用於描述提交的信息。
提交暫存區的指定文件到版本庫區:
修改後直接提交:
-a參數設置修改文件後不需要執行 git add 命令,直接來提交。
如:我們在上面的命令基礎上進行提交
接下來,我們對 Unit1.pas 文件進行修改,然後進行文件比較:
git reset 命令用於回退版本,可以指定退回某一次提交的版本。
git reset 命令語法格式如下:
可以使用 數字表示
git rm 命令用於刪除文件。
如果只是簡單地從工作目錄中手工刪除文件,運行 git status 時就會在 Changes not staged for commit 的提示。所以,在 git 環境下一定要使用 git 的刪除文件操作。
git rm 刪除文件有以下幾種形式:
將文件從暫存區和工作區中刪除:
如果刪除之前修改過並且已經放到暫存區域的話,則必須要用強制刪除選項 -f 。
如果想把文件從暫存區域移除,但仍然希望保留在當前工作目錄中,換句話說,僅是從跟蹤清單中刪除,使用 --cached 選項即可:
可以遞歸刪除,即如果後面跟的是一個目錄做為參數,則會遞歸刪除整個目錄中的所有子目錄和文件:
git mv 命令用於移動或重命名一個文件、目錄或軟連接。
如果新文件名已經存在,但還是要重命名它,可以使用 -f 參數:
⑵ 如何在git伺服器上查看提交的文件
代碼提交
代碼提交一般有五個步驟:
1.查看目前代碼的修改狀態
2.查看代碼修改內容
3.暫存需要提交的文件
4.提交已暫存的文件
5.同步到伺服器
1. 查看目前代碼的修改狀態
提交代碼之前,首先應該檢查目前所做的修改,運行git status命令
a) 已暫存 (changes to be committed)
new file //表示新建文件
modified //表示修改文件
deleted //表示刪除文件
b) 已修改 (changed but not updated)
modified //表示修改文件
deleted //表示刪除文件
另外,git 給出了可能需要的操作命令,git add/rm, gitcheckout --
c) 未跟蹤 (untracked files)
2. 查看代碼修改的內容
git diff <file>
比較某文件與最近提交節點的差異。
注意:如果該文件已暫存,那麼應該使用git diff –cached<file>
git diff <hashcode> <hashcode> <file>
比較某文件在提交節點a,節點b的差異。
技巧:如果省略後面一個hashcode,則默認表示與上一提交節點比較。(也可以利用^運算符)
3. 暫存需要提交的文件
如果是新建的文件
則git add <file>
如果是修改的文件
則git add <file>
如果是刪除的文件
則 git rm <file>
4. 提交已暫存的文件
git commit
注意注釋填寫規范。
git commit --amend
修改最近一次提交。有時候如果提交注釋書寫有誤或者漏提文件,可以使用此命令。
5. 同步到伺服器
同步到伺服器前先需要將伺服器代碼同步到本地
命令: git pull
如果執行失敗,就按照提示還原有沖突的文件,然後再次嘗試同步。
命令:git checkout -- <有沖突的文件路徑>
同步到伺服器
命令: git push origin <本地分支名>
如果執行失敗,一般是沒有將伺服器代碼同步到本地導致的,先執行上面的git pull命令。
⑶ git基本命令ls、cat、mv、touch簡述
1. 命令含義:List directory contents,用來顯示目錄或具體文件列表。
2. 主要用法示例:
1. 命令含義:Print and concatenate files,列印、合並文件。
2. 主要用法示例:
1. 命令含義:Move or rename files and directories,移動或重命名文件和目錄。
2. 主要用法示例:
1. 命令含義:用於修改文件或者目錄的時間屬性,包括存取時間和更改時間。若文件不存在,系統會建立一個新的空白文件。
2. 主要用法示例:
該網站幾乎能夠查詢所有Linux命令的含義,其界面如下圖:
⑷ git常用命令是什麼
Git 常用命令速查:
git branch 查看本地所有分支。
git status 查看當前狀態。
git commit 提交。
git branch -a 查看所有的分支。
git branch -r 查看遠程所有分支。
git commit -am 「init」 提交並且加註釋。
git remote add origin git@192。168。1。119:ndshow。
git push origin master 將文件給推到伺服器上。
git remote show origin 顯示遠程庫origin里的資源。
git push origin master:develop。
(4)git命令查看文件擴展閱讀
git的簡單介紹
git如C編程語言、C++、java等,編寫計算機、手機或游戲機上的游戲。 目前流行的游戲編程語言為C++編程語言。
游戲編程介面為DirectX9.0、OpenGL和SDL(Simple DirectMedia Layer)等。現在手機上玩的游戲分為Android與IOS兩種平台,分別是用java和object-c(或swift)。當然時下也流行一些跨平台的編程引擎,例如cocos2d-x、unity 3D等。
⑸ Git常用命令
1.1 配置環境
當安裝Git後首先要做的事情是設置用戶名稱和email地址。這是非常重要的,因為每次Git提交都會使用該用戶信息。該用戶信息和GitHub上注冊的遠程倉庫的相關信息沒有任何關系。
git config --global user.name "你的名字"
git config --global user.email "你的郵箱"
git config --list
配置信息保存在用戶目錄下的.giitconfig文件中
1.2 獲取Git倉庫
要使用Git對我們的代碼進行版本控制,首先需要獲得Git倉庫
獲取Git倉庫通常有兩種方式:
執行步驟如下:
1、在電腦的任意位置創建一個空目錄作為我們的本地Git倉庫
2、進入這個目錄中,點擊右鍵打開Git bash 窗口
3、執行命令git init
可以通過Git提供的命令從遠程倉庫進行克隆,將遠程倉庫克隆到本地的命令形式為:
git clone 遠程Git倉庫地址
1.3 工作目錄、暫存區以及版本庫概念
版本庫:.git隱藏文件就是版本庫,版本庫存儲了很多配置信息、日誌信息和文件版本信息等
工作目錄(工作區):包含.git文件夾的目錄就是工作目錄,主要用於存放開發的代碼
暫存區:.git文件夾中有很多文件,其中一個index文件就是暫存區,也可以叫做stage。暫存區是一個臨時保存修改文件的地方
1.4 Git工作目錄下文件的兩種狀態
Git工作目錄下的文件存在兩種狀態:
Unmodified 未修改狀態
Modified 已修改狀態
Staged 已暫存狀態
這些文件的狀態會隨著我們執行Git的命令發生變化
1.5 本地倉庫操作
git status 查看文件狀態
也可以使用git status -s使輸出信息更簡潔
git add 將未跟蹤的文件加入暫存區,將已經修改的文件加入暫存區也是通過這個命令
git reset 將暫存區文件取消暫存
git commit -m 「你的說明」 將暫存區文件提交到本地倉庫
git rm 刪除文件 說明:這種操作是直接將文件加入到暫存區裡面,直接提交到本地倉庫生效,而直接刪除的話沒有進入到暫存區,需要先把文件加入到暫存區之後,再提交到本地倉庫。
將文件添加至忽略列表
一般我們總會有些文件無需納入Git的管理,也不希望他們總出現在未跟蹤文件列表。通常這些都是自動生成的文件,比如日誌文件,或者編譯過程中創建的臨時文件等。在這種情況下,我們可以在工作目錄中創建一個名為.gitnore的文件(文件名稱固定),列出忽略的文件模式。下面是一個示例:#代表注釋
由於windows無法創建不含文件名的文件,因此我們需要在bash窗口中用如下命令創建。
git log 查看日記記錄
1.6 遠程倉庫操作
如果想查看已經配置的遠程倉庫伺服器,可以運行git remote 命令。它會列出指定的每一個遠程伺服器的簡寫。如果已經克隆了遠程倉庫,那麼至少可以看見origin,這是Git克隆的倉庫伺服器的默認名字
git remote -v 可以查看對遠程倉庫詳細一點的說明
git remote show origin 可以查看對origin更詳細的遠程倉庫的說明
運行git remote add 添加一個遠程Git倉庫,同時指定一個可以引用的簡寫
如果你想獲得一份已經存在了的Git倉庫的拷貝,這時需要用到 git clone 命令。Git克隆的是Git倉庫伺服器上的幾乎所有數據(包括日誌信息、 歷史 記錄等),而不僅僅是復制工作所需要的文件。當你執行git clone 命令的時候,默認配置下Git倉庫中的每一個文件的每一個版本都將被拉取下來。
如果因為一些原因想要移除一個遠程倉庫,可以使用git remote rm
注意:此命令只是從本地移除遠程倉庫的記錄,並不會影響到遠程倉庫
git fetch 是從遠程倉庫獲取最新版本到本地倉庫,不會自動merge
說明:如果使用fetch命令,拉取的文件會放到版本庫裡面,不會自動整合到工作區,如果需要整合到工作區,需要使用 git merge 遠程倉庫別名/遠程倉庫分支
git pull 是從遠程倉庫獲取最新版本並merge到本地倉庫
注意:如果本地倉庫不是從遠程倉庫克隆,而是本地創建的倉庫,並且倉庫中存在文件,此時再從遠程倉庫中拉取文件的時候會報錯(fatal:refusing to merge unrelated histories),解決此我呢提可以在git pull 命令後加入參數 --allow-unrelated-histories
git push
1.7 Git分支
幾乎所有的版本控制系統都是以某種形式支持分支。使用分支意味著你可以把你的工作從開發主線上分離開來,以免影響開發主線。Git的master是一個特殊分支。它跟其它分支沒有區別。之所以每一個倉庫都有mater分支,是因為git init默認創建它,並且大多數人都懶得去改動它。
# 列出所有本地分支
$ git branch
#列出所有遠程分支
$ git branch -r
#列出所有本地分支和遠程分支
$git branch -a
git branch 分支名稱
git checkout 分支名稱
git push 遠程倉庫別名 遠程倉庫分支
git merge 分支名稱 說明:在當前分支下合並其他分支
注意:如果兩個分支存在同樣的文件名且同行的內容不一樣,那麼會產生矛盾,需要自己手動修改產生矛盾後的文件,然後添加到暫存區然後提交。
git branch -d 分支名稱
如果要刪除的分支中進行了一些開發動作,此時執行上面的刪除命令並不會刪除分支,可以將命令中的-d參數改為-D
如果要刪除遠程倉庫中的分支,可以使用命令git push origin -d branchName
1.8 Git標簽
像其他版本控制系統一樣,Git可以給 歷史 中的某一給提交打上標簽,以示重要。比較有代表性的是人們會使用這個功能來標記發布結點(v1.0、v1.2等)。標簽指的是某個分支某個特定時間點的狀態。通過標簽,可以很方便地切換到標記時的狀態。
#新建一個tag
$ git tag [tagName]
$ git tag
#新建一個分支,指向某個tag
$ git checkout -b [branch] [tag]
#刪除本地tag
$git tag -d[tag]
#刪除遠程tag
$git push origin :refs/tags/[tag]
⑹ Git常用命令--(ls,cat,mv,touch)
描述:列出有關文件的信息(默認為當前目錄)。如果沒有指定-cftuvSUX或——Sort,則按字母順序排序。
-a 列出所有文件,包括隱藏文件和以「.」開頭的文件;
-d 列出目錄本身;
-l 列出條目的詳細信息;
-r 以反序排列;
-t 按時間排列;
-h 顯示的文件大小按人類可讀的方式;
-R 遞歸處理子目錄 ;
-X 以文件名的後綴排序;
-S 按文件大小排序
ls
列出當前目錄下的所有文件,這個用的最多。
ls -al
列出所有文件(包括隱藏文件和以「.」開頭的文件),及其詳細信息;
ls - lt
列出所有文件詳細信息,並按時間排序,時間最近的靠前。
描述:連接和查看文本文件
-n 從1開始對所有輸出行進行編號;
-b 和n相似,但是空行不編號;
-s 遇到連續空行時合並為一行;
cat file1
列印文件內容
cat file1 file2 > file3
合並文件1和2的內容輸出到文件3,如果文件3存在則覆蓋
cat -n file1 >> file2
把文件1的內容按行編號後追加到文件2
描述:用來移動文件或者重命名
-b 若需覆蓋文件,則覆蓋前先備份;
-f 如果目標文件存在,強制覆蓋;
-i 若目標文件存在,詢問是否覆蓋;
-t 移動多個源文件到一個目錄,使用中目標目錄寫在前,源文件在後
mv aa.txt bb.txt
將文件aa.txt改名為bb.txt;
mv aa.txt demo
將文件aa.txt移動到目錄demo中;
mv aa.txt bb.txt dir1; mv -t ~/Desktop/demo-1/dir2 aa.txt bb.txt
先將文件aa.txt和bb.txt移動到目錄dir1,然後再將文件aa.txt和bb.txt移動到目錄dir2中;
mv dir1 dir2
如果目錄dir2不存在,將目錄dir1改名為dir2;如果dir2存在,將dir1移動到dir2
描述:用來新建一個文件,或者修改已存在文件的時間戳
-a 只更改存取時間;
-c 不建立任何文檔;
-d 使用指定的日期時間;
touch aa.txt bb.txt
創建文件aa.txt和bb.txt
touch -c cc.txt
如果cc.txt不存在就不更改時間戳也不建立cc.txt
touch -r bb.txt
更新bb.txt的時間戳
Git命令和參數都很多,需要慢慢學。可以使用Git的 --help命令查看詳細用法,如輸入cat --help,查看cat命令的參數及使用方法。也可以使用網站explainshell.com,輸入各種組合參數的命令來查詢,每一個參數都會有解釋。
⑺ 【學了就忘】Git操作 — 14.Git基本操作(一)
要對現有的某個項目開始使用Git管理,只需到此項目所在的根目錄,執行 git init 命令即可。
准備一個新的Git本地版本庫:
說明:初始化Git倉庫後,在當前目錄下會出現一個名為 .git 的目錄,所有Git需要的數據和資源都存放在這個目錄中。
不過目前,僅僅是按照既有的結構框架,初始化好了Git倉庫中所有的文件和目錄,但我們還沒有開始跟蹤管理項目中的任何一個文件。
使用 git status 命令進行查看。
進入本地版本庫查看工作區、暫存區中文件的狀態。
1)創建文件後查看工作區、暫存區中文件的狀態
我們在倉庫目錄中創建一個 readme.txt 文件後,在執行 git status 命令。
說明:
2)將工作區的文件添加到暫存區
執行 git add 命令,將 readme.txt 文件添加到暫存區。
3)再次查看工作區、暫存區狀態
執行 git status 命令查看工作區、暫存區狀態。
說明:
總結:
只要在 "Changes to be committed" 這行下面顯示的文件,就說明是已暫存狀態。
如果此時提交,那麼該文件此時此刻的版本,將被留存在歷史記錄中。
在 git add 命令後面可以指明要跟蹤的文件或目錄路徑。
如果是目錄的話,就說明要遞歸跟蹤該目錄下的所有文件。(其實 git add 命令的潛台詞就是把目標文件快照放入暫存區域,同時未曾跟蹤過的文件標記為已跟蹤。)
4)將文件從暫存區撤回到工作區
執行 git rm --cached 命令,將 readme.txt 文件從暫存區撤回到工作區。
並執行 git status 命令查看工作區、暫存區狀態。
可以看到結果, readme.txt 文件又成為了一個未被Git追蹤的文件。