Git的使用方法與GitHub項目托管方法


Git的安裝

Windows上安裝Git

訪問網址:https://git-for-windows.github.io/

點擊Download下載,下載后雙擊安裝包進行安裝,一直“下一步”就可以了。

Windows中可以使用圖形界面進行Git的操作,這里使用命令行方式來操作Git

找到Git Bash並打開


image

配置身份介紹

git config --global user.name "Name"
git config --global user.email "Name@tom.com"

使用同樣的命令,不加后面的""內容就可以查看配置是否成功

給某個項目文件建立代碼倉庫

在該項目文件的目錄下打開Git或輸入文件目錄進入項目的目錄下面

然后輸入命令:

git init

就完成了創建代碼倉庫,可以看到文件中有個.git文件夾,這個文件夾就是用來記錄本地所有的Git操作的,可以通過ls -al查看文件中有哪些東西

提交本地代碼

注意:
warning: LF will be replaced by CRLF in app.wxss.
The file will have its original line endings in your working directory.
原因是路徑中存在 / 的符號轉義問題,false就是不轉換符號默認是true,相當於把路徑的 / 符號進
行轉義,這樣添加的時候就有問題
解決方法:
git config --global core.autocrlf false

使用add把想要提交的代碼添加進來和commit命令執行提交操作,就可以完成提交。
添加app.wxss文件,使用完整文件名

git add app.wxss

添加images目錄,使用目錄文件名

git add images

添加所有文件,使用"."

git add .

提交命令,commit命令后面通常要用-m參數來加上提交的描述信息,否則提交不合法

git commit -m "First commit"

版本控制

有時候我們的項目中不是所有文件都需要版本控制的的,Git提供一種允許用戶將指定的文件或目錄排除在版本控制之外,Git會檢查代碼倉庫中是否存在一個名為.gitignore的文件,如果存在,就一行一行讀取這個文件中的內容,並把每一行指定的文件或目錄排除在版本控制之外。

可以在不同文件夾下建立一個.gitignore來控制當前文件夾下的版本控制,配置好后使用add和commit完成提交。

.gitignore中指定的文件或目錄可以用“*”通配符,如: *.jpg

使用如下代碼生成.gitignore文件

touch .gitignore


查看文件修改情況的方法,如果沒有修改Git會提示目前項目沒有修改。

git status

如果要看一個文件更改的內容,使用diff命令可以查看所有文件的修改也可以查看指定文件的修改。

git diff
git diff app.json

撤銷未提交的修改,使用checkout命令,這種撤銷只適合與沒有執行過add命令的文件,使用提交過后使用checkout無法撤銷。

git checkout app.json

那么可以使用取消添加的reset命令,然后再運行git status會發現文件重新變回未添加狀態,此時就可以使用checkout命令。

git reset HEAD app.json

使用log查看歷史提交記錄,使用指定id加-l查看一條記錄,查詢結果中減號代表刪除的部分,加號代表添加的部分。

git log
git log id值---------------- -l

Git分支的用法

分支是版本控制工具中比較高級且比較重要的一個概念,它主要的作用就是再現有代碼的基礎上開辟一個分叉口,是的代碼可以再主干線和分支線上同時進行開發,且相互之間不會影響。分支工作原理圖如下:

為什么要建立分支?當項目涉及出版本的情況,如果不建立分支的話,你就會非常頭疼。例如:公司研發一款不錯的軟件,最近剛剛完成,並推出了1.0版本。但是領導是不會讓你們閑着的,馬上提出新的需求,讓你們投入到1.1版本的開發工作當中。過來幾個星期,1.1版本的功能已完成了一半,但是這個時候有用戶反饋,之前上線的1.0版本發現了幾個重大的bug,嚴重的影響軟件的正常使用。領導也相當重視這個問題,要求你們立刻修復but,並重新發布1.0版本,但這個時候你就非常為難了,你會發現根本沒法去修復這些bug,因為現在1.1版本已經開發一半了,如果在現有的代碼基礎上修復這些bug,那么更新的1.0版本將會帶有1.1版本的功能!

是否感受到了分支的重要性,下面來看看分支的使用方法。

分支的英文名為branch,查看當前版本庫中有哪些分支,使用branch命令

git branch

image

由於項目中還沒有創建過任何分支,所有只有一個主干線master存在,*號標識當前在哪個分支下。

創建version1.0分支:

git branch version1.0


切換到version1.0分支:

git checkout version1.0

需要注意的是,在version1.0分支上修改並提交代碼是不會影響到master分支的。童謠的道理,在master分支上修改並提交代碼也不會影響到version1.0分支。因此,如果我們在version1.0分支上修復一個bug,在master分支上這個bug仍然存在的。這是將修改的代碼一行行賦值到master分支上顯然不是一種聰明的做法,最好的辦法就是使用merge命令來完成合並操作,如下所示:

git checkout master
gitmerge version1.0

這樣就可以把version1.0分支修改並提交的內容合並到master分支上了。當然,在合並分支的時候,還有可能出現代碼沖突的情況,這時候你就需要自己慢慢的找出並解決這些沖突了,Git在這里就無法幫助你了。

當我們不需要version1.0這個分支時,使用如下命令刪除:

git branch -D version1.0

與遠程版本庫協作

團隊合作開發才是版本控制工具的強大功能,團隊的每人成員在遠程版本庫中獲取到最原始的代碼,然后各自進行開發,並且每次提交的代碼都同步到遠程版本庫上,團隊中每個成員養成經常從版本庫中獲取最新代碼的習慣,減少代碼沖突的概率。

比如現在有個遠程版本庫的Git地址時https://github.com/example/test.git
將代碼下載到本地:

git clone https://github.com/example/test.git

把本地修改的內容同步到遠程版本庫:

git push origin master

其中origin部分指定的時遠程版本庫上的Git地址,master部分指定的是同步到哪一個分支上,上述命令就完成了將本地代碼同步到https://github.com/example/test.git這個版本庫的master分支上的功能。

將遠程版本庫上的修改同步到本地:(Git提供兩種命令來完成此功能,分別是fetch和pull)

git fetch origin master

執行這個命令后,就會將遠程版本庫上的代碼同步到本地,不過同步下來的代碼並不會合並到任何分支上去,而是會存放在一個origin/master分支上,這時我們可以通過diff命令來查看遠程版本庫上到底修改了哪些東西:

git diff origin/master

之后再調用merge命令將origin/master分支上的修改合並到主分支上即可:

git merge origin/master

而pull命令則相當於fetch和merge這兩個命令放在一起執行了,它可以從遠程版本庫上獲取最新的代碼並合並到本地:

git pull origin master

將代碼托管到GitHub上

任何開源軟件都可以免費地將代碼提交到Github上,以零成本的代駕進行代碼托管。Github官網地址時https://github.com/

如果沒有賬號,點擊Sign up for GitHub按鈕進行注冊,然后填入用戶名、郵箱和密碼。

點擊Create an account完成注冊,接下來會讓你選擇個人計划,收費計划有創建私人版本庫的權限,我們選擇免費計划就可以了,然后點擊Continue按鈕會進入一個問卷調查,如果沒有興趣填寫,直接點擊最下方的skip this step跳過就可以了。然后就會跳轉到你的個人主頁。

點擊Start a project按鈕創建一個版本庫,如果你是剛注冊的賬號肯需要做一下郵箱驗證,驗證成功后才能開始創建。

這里版本庫命名為wydb,然后下方的Add .gitignore為添加.gitignore文件,如果項目不知道選哪個類型就選擇None,然后自己創建,這里使用Apache License 2.0來做開源協議。這些配置選項根據自己的需求配置。

點擊Create repository按鈕,版本庫就創建完成了,如圖所示版本庫主頁地址為:https://github.com/xiedong2016/wydb.git

README.md文件可以修改項目版本庫主頁的描述

將遠程版本庫克隆到本地

本地新建項目文件夾后,在文件夾目錄中運行Git Bash,然后運行下方命令就完成了克隆。

git clone https://github.com/xiedong2016/wydb.git

然后我們要將克隆到本地的文件中所有文件復制到上一層(我們本地的項目根目錄),這樣就把項目工程目錄添加到版本控制中去了。注意.git是個穎倉目錄,復制時不要漏了。

把項目現有的文件提交到GitHub上

將文件添加到版本控制中:

git add .

本地執行提交操作

git commit -m "First commit."

將提交內容同步到遠程版本庫

git push origin master

注意,在最后一步的時候要求輸入用戶名和密碼來進行身份校驗,這里輸入我們注冊時填入的用戶名和密碼就可以了。

這樣就完成了GitHub的托管。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM