上篇通過【Git實戰001:Windows系統Git安裝及設置詳解 】已經安裝配置好了Git,現在我們利用Gitlab來快速的實現項目git版本控制功能。Git版本控制為文件提供了3種狀态分别是已修改(修改了某個文件,但還沒有提交保存)、已暫存(把已修改的文件放在下次提交時要保存的清單中)、已提交(該文件已經保存在本地版本庫中),這3個狀态分别對應了一個工作域,已修改的放在工作區(日常工作的代碼文件或者文檔所在的文件夾)、已暫存的添加在暫存區(工程根目錄.git/index文件中)、已提交存放在本都版本庫(.git目錄,管理該工程的所有版本數據)。
版本庫(repository)也叫倉庫,Git可以對該倉庫中的所有文件進行管理并追蹤每個文件的曆史修改記錄,可以時刻對文件進行”還原”操作以恢複之前的版本信息。這個倉庫可以是已經存在的目錄或創建一個空目錄(Windows系統路徑不能有中文),通過git init命令将這個目錄初始化成Git的管理倉庫。在當前目錄下生成一個 .git 的目錄(默認是隐藏目錄),這個目錄就是Git來跟蹤管理版本庫的。
接下來我們就可以在倉庫中來創建項目了,這裡我用Python創建一個Django項目。在倉庫目錄調出cmd命令窗口,運行以下命令:django-admin startproject NXOpen創建一個名為NXOpen的項目,然後在倉庫就會生成一個項目名為NXOpen的文件夾了,我們的項目就存儲在這個目錄下。
使用命令git status可以查看當前倉庫中文件的狀态,on branch master 顯示當前的所有的分支,Git為我們自動創建的第一個主幹master,此時沒有分支。no commits yet 表示沒有要被提交的項目,Untracked file表示有未跟蹤的文件。需要将項目先添加到暫存區,否則就無法提交至版本庫(括号中提示可以使用git add命令将要提交文件添加到暫存區)。
暫存區就是數據暫時存放的區域,用來跟蹤記錄工作區的文件變化。使用命令git add NXOpen可以将文件夾及文件夾下的内容都提交到暫存區(也可以直接用git add .),這時在.git目錄下面會生成一個index的文件。index裡維護了文件索引并計算好的tree對象的内容,當我們提交的時候他可以迅速的根據我們已經計算好的内容生成一個tree對象然後添加到曆史記錄裡面。
這裡提交的是本地版本庫,通過git命令:git commit 來提交暫存區文件。 git commit主要是将暫存區裡的改動給提交到本地倉庫。每次使用git commit 命令我們都會在本地版本庫生成一個40位的哈希值,也就是本次提交的唯一ID。參數-m 用來添加提交信息,如果加上則可以直接在後面輸入注釋信息“message”,如果不加 -m參數則會調用VIM編輯器讓你輸入message。參數-a可以把還沒有執行add命令的修改一起提交到本地倉庫。更多其他的參數可以通過git commit --help來獲取,git提供了關于commit命令的幫助文檔。
在推送之前我們需要先到Gitlab創建一個項目,創建之後我們就可以獲取到遠程倉庫的SSH地址。在項目底下會有對應的命令行操作指令,我們可以根據自己的實際情況選擇對應的操作指令。第一次上傳我們需要先關聯遠程倉庫,利用命令git remote add “遠程主機名,一般為origin” “Gitlab項目的SSH地址”來關聯遠程倉庫。如果關聯失敗需删除.git目錄重新初始化,再進行關聯、暫存、提交等操作。
第一次提交代碼我們使用命令:git push -u origin master來提交至遠程倉庫,由于遠程庫是空的所以第一次推送master分支時需要加上–u參數,推送master分支時會把本地的master分支内容推送的遠程新的master分支。如果不行可以加上參數-f進行強制推送,這時可以把當前分支master推送到遠程并覆蓋master,推送成功後就可以在Gitlab頁面中看到項目文件了。
先進Gitlab查看你需要拉取的項目,在Clone中找到對應的遠程倉庫SSH地址。在任意目錄打開Git Bash(Linux風格的命令行),執行命令:git clone “倉庫地址”就可以實現項目的拉取。
總結:
提交之前需将修改的文件先添加至暫存區,首次推送遠程倉庫需先關聯倉庫地址。關聯一般直接用這種格式git remote add origin [email protected]:Kevinfan/nxopen.git即可(默認端口為22),如果該端口被禁用則改用git remote add origin ssh://[email protected]:port/Kevinfan/nxopen.git,即在git前面加上ssh://并在IP後面加上具體的端口号。以上内容是小編給大家分享的【Git實戰002:Git快速入門使用詳解】,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回複大家的。
更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!