目錄
Git介紹
Git是什么?
Git是目前世界上最先進的分布式版本控制系統。
SVN與Git的最主要的區別?
SVN是集中式版本控制系統,版本庫是集中放在中央服務器的,而干活的時候,用的都是自己的電腦,所以首先要從中央服務器哪里得到最新的版本,然后干活,干完后,需要把自己做完的活推送到中央服務器。集中式版本控制系統是必須聯網才能工作,如果在局域網還可以,帶寬夠大,速度夠快,如果在互聯網下,如果網速慢的話,就納悶了。
Git是分布式版本控制系統,那么它就沒有中央服務器的,每個人的電腦就是一個完整的版本庫,這樣,工作的時候就不需要聯網了,因為版本都是在自己的電腦上。既然每個人的電腦都有一個完整的版本庫,那多個人如何協作呢?比如說自己在電腦上改了文件A,其他人也在電腦上改了文件A,這時,你們兩之間只需把各自的修改推送給對方,就可以互相看到對方的修改了。
Git安裝
windows上安裝Git
下載安裝
下載地址:https://git-scm.com/download/win

下載好后,雙擊進行下一步下一步即可。
驗證git安裝是否成功
1). 命令行輸入:git --version,提示如下標識安裝成功

2). 回到電腦桌面,鼠標右擊如果看到有兩個git單詞則安裝成功

Linux上安裝Git
yum安裝
在Linux上是有yum安裝Git,非常簡單,只需要一行命令
yum -y install git
輸入 git --version查看Git是否安裝完成以及查看其版本號

備注: yum安裝git被安裝在
/usr/libexec/git-core目錄下
Git初始化配置
a、設置用戶名:$ git config --global user.name "<用戶名>"
b、設置用戶郵箱:$ git config --global user.email "<電子郵件>"
注意:該配置會在github主頁上顯示誰提交了該文件
c、配置ok之后,我們用如下命令來看看是否配置成功
git config --list
注意:git config --global 參數,有了這個參數表示你這台機器上所有的git倉庫都會使用這個配置,當然你也可以對某個倉庫指定不同的用戶名和郵箱
Git使用
操作流程


demo使用演示
1.進入demo文件夾cd demo
2.初始化倉庫git init

3.倉庫中創建readme.txt文件,內容:test

4.查看倉庫狀態

5.添加文件到暫存區中
git add readme.txt
6.提交文件到倉庫
git commit -m "readme.txt提交"

7.查看倉庫狀態

8.提交到遠程庫
git push
9.修改文件后可以使用diff查看文件修改前后對比
git diff readme.txt

10.git log來查看最近到最遠的歷史提交日志

11.回退版本
git reset --hard 版本號
Git基本常用命令
mkdir: XX (創建一個空目錄 XX指目錄名)
pwd: 顯示當前目錄的路徑。
git init 把當前的目錄變成可以管理的git倉庫,生成隱藏.git文件。
git add XX 把xx文件添加到暫存區去。
git commit –m “XX” 提交文件 –m 后面的是注釋。
git status 查看倉庫狀態
git diff XX 查看XX文件修改了那些內容
git log 查看歷史記錄
git reset --hard HEAD^ 或者 git reset --hard HEAD~ 回退到上一個版本
(如果想回退到100個版本,使用git reset –hard HEAD~100 )
cat XX 查看XX文件內容
git reflog 查看歷史記錄的版本號id
git checkout -- XX 把XX文件在工作區的修改全部撤銷。
git rm XX 刪除XX文件
git remote add origin https://github.com/tugenhua0707/testgit 關聯一個遠程庫
git push –u(第一次要用-u 以后不需要) origin master 把當前master分支推送到遠程庫
git clone https://github.com/tugenhua0707/testgit 從遠程庫中克隆
git checkout –b dev 創建dev分支 並切換到dev分支上
git branch 查看當前所有的分支
git checkout master 切換回master分支
git merge dev 在當前的分支上合並dev分支
git branch –d dev 刪除dev分支
git branch name 創建分支
git stash 把當前的工作隱藏起來 等以后恢復現場后繼續工作
git stash list 查看所有被隱藏的文件列表
git stash apply 恢復被隱藏的文件,但是內容不刪除
git stash drop 刪除文件
git stash pop 恢復文件的同時 也刪除文件
git remote 查看遠程庫的信息
git remote –v 查看遠程庫的詳細信息
git push origin master Git會把master分支推送到遠程庫對應的遠程分支上
更多常用命令請查看下面鏈接
https://www.cnblogs.com/upstudy/p/15868898.html
使用中可能遇到的問題
1.git reset恢復指定版本代碼后,再無法提交到遠程庫;git status提示出現2個分支不同提交
解決:https://blog.csdn.net/m0_37884977/article/details/78901668
2.git push origin master的時候會出現失敗的現象(master|REBASE 1/10)
解決:https://blog.csdn.net/qq_42469247/article/details/88901756
3.提交代碼報錯
解決:git pull拉去代碼,再解決沖突文件再push上去;強制將本地代碼推送到遠程(git push -u origin master -f)慎用
4.git push時報連接問題:fatal: Could not read from remote repository.
解決方法一:git push origin <分支名稱>(指定遠程地址)
解決方法二:
沒有遠程分支時:
git remote add origin [URL] //將git進行遠程連線
有遠程分支時:
git branch --set-upstream-to=origin/<分支名> //將git進行遠程連線
5.git push報錯

解決方法:
! [rejected] master -> master (non-fast-forward)
error: failed to push some refs to 'git@gitlab.huayong.mm:awa_aoto_test/awa_auto_test.git'
hint: Updates were rejected because the tip of your current branch is behind
hint: its remote counterpart. Integrate the remote changes (e.g.
hint: 'git pull ...') before pushing again.
hint: See the 'Note about fast-forwards' in 'git push --help' for details.
6.git沖突產生 和 解決方案 思維導圖

推薦幾個有關git的學習網站
1.git官網
2.廖雪峰的官方網站中的git教程
https://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000
非常推薦!!!
講解的淺顯易懂,容易理解,還有視頻教學,對初次接觸者的幫助非常大,建議先跟着廖老師學習git。
3.猴子都能懂的git入門
http://backlogtool.com/git-guide/cn/intro/intro1_1.html
第一次接觸的網站,是師弟推薦的,只是可惜呀。。。當時沒有學進去。。。
4.菜鳥教程
http://www.runoob.com/git/git-tutorial.html
這個網站也不錯,網站上有很多其他工具等的學習教程.
