GIT的基本操作
下載安裝:
開啟 [git官網] https://git-scm.com/,下載git對應作業系統的版本。
安裝直接下一步就行。
git的三個程式:
Git Bash:Unix與Linux風格的命令列,使用最多,推薦最多
Git CMD:Windows風格的命令列
Git GUI:圖形介面的Git
Git相關的配置檔案:
1)、Git\etc\gitconfig :Git 安裝目錄下的 gitconfig --system 系統級
2)、C:\Users\Administrator\ .gitconfig 只適用於當前登入使用者的配置 --global 全域性
使用:
第一次使用git,需要配置使用者名稱,郵箱
git config --global user.name "zhangsan" #名稱 git config --global user.email [email protected] #郵箱
注意git的四個區域:
-
Workspace:工作區,就是你平時存放專案程式碼的地方;
-
Index / Stage:暫存區,用於臨時存放你的改動,事實上它只是一個檔案,儲存即將提交到檔案列表資訊;
-
Repository:倉庫區(或本地倉庫),就是安全存放資料的位置,這裡面有你提交到所有版本的資料。其中HEAD指向最新放入倉庫的版本;
-
Remote:遠端倉庫,託管程式碼的伺服器,可以簡單的認為是你專案組中的一臺電腦用於遠端資料交換;
建立本地倉庫的方法有兩種:一種是建立全新的倉庫,另一種是克隆遠端倉庫。
在自己資料夾目錄下,右鍵Git Bash here輸入命令
# 在當前目錄新建一個Git程式碼庫 $ git init
遠端克隆
git clone [url]
檔案的相關操作:
檔案的四種狀體:
-
Untracked: 未跟蹤, 此檔案在資料夾中, 但並沒有加入到git庫, 不參與版本控制. 通過git add 狀態變為Staged;
-
Unmodify: 檔案已經入庫, 未修改, 即版本庫中的檔案快照內容與資料夾中完全一致. 這種型別的檔案有兩種去處, 如果它被修改, 而變為Modified. 如果使用git rm移出版本庫, 則成為Untracked檔案;
-
Modified: 檔案已修改, 僅僅是修改, 並沒有進行其他的操作. 這個檔案也有兩個去處, 通過git add可進入暫存staged狀態, 使用git checkout 則丟棄修改過, 返回到unmodify狀態, 這個git checkout即從庫中取出檔案, 覆蓋當前修改 ;
-
Staged: 暫存狀態. 執行git commit則將修改同步到庫中, 這時庫中的檔案和本地檔案又變為一致, 檔案為Unmodify狀態. 執行git reset HEAD filename取消暫存, 檔案狀態為Modified;
#檢視指定檔案狀態 git status [filename] #檢視所有檔案狀態 git status git add . 新增所有檔案到暫存區,注意後面有. 代表全部 git commit -m "訊息內容" 提交暫存區中的內容到本地倉庫 -m 提交資訊
忽略檔案:
有些時候我們不想把某些檔案納入版本控制中,比如資料庫檔案,臨時檔案,設計檔案等
在主目錄下建立".gitignore"檔案,此檔案有如下規則:
-
忽略檔案中的空行或以井號(#)開始的行將會被忽略。
-
可以使用Linux萬用字元。例如:星號(*)代表任意多個字元,問號(?)代表一個字元,方括號([abc])代表可選字元範圍,大括號({string1,string2,...})代表可選的字串等。
-
如果名稱的最前面有一個感嘆號(!),表示例外規則,將不被忽略。
-
如果名稱的最前面是一個路徑分隔符(/),表示要忽略的檔案在此目錄下,而子目錄中的檔案不忽略。
-
如果名稱的最後面是一個路徑分隔符(/),表示要忽略的是此目錄下該名稱的子目錄,而非檔案(預設檔案或目錄都忽略)。
#為註釋 *.txt #忽略所有 .txt結尾的檔案,這樣的話上傳就不會被選中! !lib.txt #但lib.txt除外 /temp #僅忽略專案根目錄下的TODO檔案,不包括其它目錄temp build/ #忽略build/目錄下的所有檔案 doc/*.txt #會忽略 doc/notes.txt 但不包括 doc/server/arch.txt
建立遠端連線:
1.設定本機繫結SSH公鑰,實現免密碼登入:C:\Users\Administrator\.ssh 目錄
# 生成公鑰 ssh-keygen
會生成一個id_rsa.pub檔案,裡面就是你的公鑰。
登入你的github,點選自己頭像,有Setting按鈕,進入頁面選擇SSH AND GPG keys,複製你的公鑰就行了。
後面你可以克隆倉庫到本地,把生成的檔案複製到自己本地專案裡,就可以在idea裡直接操作上傳。
這中間可能會遇到個報錯
git clone error 10054 error: RPC failed; curl 28 OpenSSL SSL_read: Connection was reset, errno 10054 fatal: expected
用下面這個命令解決:
git config --global http.sslVerify "false"
分支:
常用命令:
# 列出所有本地分支 git branch # 列出所有遠端分支 git branch -r # 新建一個分支,但依然停留在當前分支 git branch [branch-name] # 新建一個分支,並切換到該分支 git checkout -b [branch] # 合併指定分支到當前分支 $ git merge [branch] # 刪除分支 $ git branch -d [branch-name] # 刪除遠端分支 $ git push origin --delete [branch-name] $ git branch -dr [remote/branch]偲