Git版本管理工具的使用
一、下載安裝
windows:
https://git-for-windows.github.io/,下載文件后一路next
linux:
# ubuntu,debian# $ sudo apt-get install git #centos,redhat系統 $ yum install git?
二、使用
1、在開始菜單里找Git Bash
2、自報家門
?
3、cd進入到你要管理的文件夾下
git init這個命令會將此文件夾變成版本庫
?
4、新建文件
新建文件以后git status查看,會發現文件是紅色,處于待提交狀態
?
5、提交文件
?
//將 index.php文件提交到暫存區 git add XXX//將 index.php文件提交到版本庫,-m后是說明 git commit -m "新建XXX"?
6、修改文件
命令同提交,先add再commit,提交完了以后工作區會是干凈的
?
?
7、刪除文件
git rm xxxgit commit -m "刪除了XXX"
?
8、查看日志
一行展示
git log --pretty=oneline
?
9、版本管理
//回退到f5616版本,根據版本號切換 git reset --hard f5616
?
?8、將本地代碼推到遠程倉庫
?
?10、配置ssh公鑰免密推送
a.獲取ssh地址
b.查看倉庫地址:git remote -v
如果有的話將其刪除:
命令:git remote remove <遠程庫名>
示例:git remote remove origin
?
c.配置ssh格式的遠程倉庫地址
git remote add origin?git@github.com:AiMovie/ceshi.git
?
d.創建ssh key
ssh-keygen -t rsa -C "git郵箱",一直回車,不用輸入密碼.完成后,可以在用戶主目錄里找
到.ssh目錄,內有id_rsa和id_rsa.pub兩個文件. id_rsa是私鑰,id_rsa.pub是公鑰.
這兩把鑰匙是成對的,可以讓分別持有私鑰和公鑰的雙方相互認識.
?/c/Users/young/.ssh/便生成了公鑰
若是linux,則cat ~/.ssh/id_rsa.pub查看
?
?
如果要生成為其他的項目生成ssh公鑰,則輸入:/c/Users/ACER/.ssh/id_abc (這里的地址是我自己,要換成你們自己的 id_abc就是我起的文件名)
這樣便不會被覆蓋
?
e.將其復制到github添加
?
f.push本地倉庫到遠程,就不用填密碼了
git push origin master
?
11、拉取別人github的代碼
git pull 地址
?
三、Git與SVN的不同
Git為分布式版本控制器,SVN為集中式
中心的svn服務器中,存儲著代碼版本的變遷,及日志.
而git每個開發者的電腦上,都有完整的版本,日志,及分支信息.
但開發者不依賴于服務器,可以查看日志,回退版本,創建分支.
?
本質的區別在于:
git服務器是供開發者"交換"代碼,服務器數據丟了沒關系,分分鐘再建一臺.
svn的服務器,不僅交換代碼,還控制著日志,版本,分支.服務器數據丟了就完了.
?
ps:
1、忽略文件
laravel項目忽略文件是.gitignore,把要忽略的文件或者文件夾放在里面就可以了
?
?2、多人協作
多人協作的工作模式通常是這樣:
首先,可以試圖用git push origin branch-name推送自己的修改;
如果推送失敗,則因為遠程分支比你的本地更新,需要先用git pull試圖合并;
如果合并有沖突,則解決沖突,并在本地提交;
沒有沖突或者解決掉沖突后,再用git push origin branch-name推送就能成功!
?
3、改bug
修復bug時,我們會通過創建新的bug分支進行修復,然后合并,最后刪除;
當手頭工作沒有完成時,先把工作現場git stash一下,然后去修復bug,修復后,再git stash pop,回到工作現場。
?
查看分支:git branch
創建分支:git branch <name>
切換分支:git checkout <name>
創建+切換分支:git checkout -b <name>
合并某分支到當前分支:git merge <name>
刪除分支:git branch -d <name>
把分支代碼拉到本地? ? git?clone?-b?my-branch?https://git@github.com/username/myproject.git
?
4、分支管理
首先,master分支應該是非常穩定的,也就是僅用來發布新版本,平時不能在上面干活;
那在哪干活呢?干活都在dev分支上,也就是說,dev分支是不穩定的,到某個時候,比如1.0版本發布時,再把dev分支合并到master上,在master分支發布1.0版本;
你和你的小伙伴們每個人都在dev分支上干活,每個人都有自己的分支,時不時地往dev分支上合并就可以了。
?
5、版本回退
1、git reflog master (查看本地master分支歷史變動紀錄)
?
2、git reset --hard <COMMIT_ID> (恢復到之前位置) git reset --hard master@{1}
?
轉載于:https://www.cnblogs.com/lamp01/p/7257374.html
總結
以上是生活随笔為你收集整理的Git版本管理工具的使用的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 简洁的Jquery弹出窗插件
- 下一篇: 福州大学软工 1715 | K 班 -