學(xué)會(huì)Git GitHub
Git是一個(gè)開源的分布式版本控制系統(tǒng),可以有效丧枪、高速的處理從很小到非常大的項(xiàng)目版本管理。Git 是 Linus Torvalds 為了幫助管理 Linux 內(nèi)核開發(fā)而開發(fā)的一個(gè)開放源碼的版本控制軟件夏漱。
git的安裝這里就不多說了豪诲,網(wǎng)上的教程很多。
Git基本操作
Git可以管理任何一個(gè)文件中的文件和子文件挂绰,只要在該文件夾中執(zhí)行“git init”,就可以讓Git完成管理前的準(zhǔn)備工作
git init
配置name和email
$ git config --global user.name "name"
$ git config --global user.email "email"
把我們要提交的文件的信息添加到索引庫中(緩存區(qū))
git add
查看當(dāng)前狀態(tài)
git status
把文件改到本地庫中
git commit -m '操作說明'
一次性提交屎篱,不必添加緩存區(qū)
git commit -am '操作說明'
修改操作說明
git commit --amend -m '新的操作說明'
啟動(dòng)圖形查看模式
gitk
從另一個(gè)存儲(chǔ)庫或本地分支獲取并集成(整合)
git pull
命令用于將本地分支的更新,推送到遠(yuǎn)程主機(jī)
git push
查看含有某人的提交
git log --author="luo" // 含有l(wèi)uo的人名
查看提交更新葵蒂。一個(gè)常用的選項(xiàng)是 -p交播,用來顯示每次提交的內(nèi)容差異。 你也可以加上 -2 來僅顯示最近兩次提交:
git log -p -2
查看某個(gè)時(shí)間節(jié)點(diǎn)之前或之后的提交
git log --after="2017-08-29 10:30"
git log --before="2017-08-29 10:30"
如果你想看到每次提交的簡略的統(tǒng)計(jì)信息践付,可以使用 --stat 選項(xiàng)
git log --stat
取消暫存的文件
git reset HEAD <file>
將當(dāng)前的分支重設(shè)(reset)到指定的<commit>或者HEAD(默認(rèn)秦士,如果不顯示指定<commit>,默認(rèn)是HEAD永高,即最新的一次提交)
git reset [--hard|soft|mixed|merge|keep] [<commit>或HEAD]
撤消修改 - 將它還原成上次提交時(shí)的樣子
git checkout -- <file>
查看你已經(jīng)配置的遠(yuǎn)程倉庫服務(wù)器
git remote
顯示需要讀寫遠(yuǎn)程倉庫使用的 Git 保存的簡寫與其對應(yīng)的 URL
git remote -v
添加遠(yuǎn)程倉庫
git remote add <shortname> <url>
從遠(yuǎn)程倉庫中抓取與拉取
git fetch [remote-name]
遠(yuǎn)程倉庫的移除與重命名
git remote rename
git remote rm <name>
克隆存儲(chǔ)庫
git clone <url>
創(chuàng)建分支
git branch <new-branch>
刪除分支
git push origin --delete <branch-name>
合并某個(gè)分支到當(dāng)前分支
git merge version.2
重命名分支
git branch -m <old-name> <new-name>
比較差異
git diff <file> // 比較當(dāng)前文件和暫存區(qū)文件差異 git diff
git diff <commit-id1><commit-id2> // 比較兩次提交之間的差異
git diff <branch1> <branch2> // 在兩個(gè)分支之間比較
git diff --staged // 比較暫存區(qū)和版本庫差異
git diff --cached // 比較暫存區(qū)和版本庫差異
git diff --stat // 僅僅比較統(tǒng)計(jì)信息
本地分支關(guān)聯(lián)遠(yuǎn)程分支
git push --set-upstream origin <branch-name>
分支代碼合到master
git checkout master
git merge --no-ff <branch-name>
git push origin master
暫存當(dāng)前文件夾的文件狀態(tài)
git stash save // 暫存文件
git stash list // 顯示commit版本
git stash pop 或者 git stash apply // 取出暫存文件隧土,并且合并到當(dāng)前文件夾中的文件