Git命令
git init
在命令行輸入git init,會(huì)在當(dāng)前的目錄創(chuàng)建新倉(cāng)庫(kù)。
git clone
在命令行輸入git clone,會(huì)克隆一個(gè)git的倉(cāng)庫(kù)到本目錄下。
如果一個(gè)倉(cāng)庫(kù)包含另一個(gè)倉(cāng)庫(kù),有可能報(bào)錯(cuò)。
git add
你的本地倉(cāng)庫(kù)由 git 維護(hù)的三棵“樹”組成。第一個(gè)是你的 工作目錄,它持有實(shí)際文件;第二個(gè)是 暫存區(qū)(Index),它像個(gè)緩存區(qū)域,臨時(shí)保存你的改動(dòng);最后是 HEAD,它指向你最后一次提交的結(jié)果。
## 你可以提出更改(把它們添加到暫存區(qū)),使用如下命令:
git add
git add *
git status
git status命令用于查看項(xiàng)目的當(dāng)前狀態(tài)。
git commit
git commit -m "代碼提交信息"
用命令git commit告訴Git,把文件提交到倉(cāng)庫(kù)。 -m后面輸入的是本次提交的說明。
git diff可以查看還沒有提交到暫存區(qū)的文件的變化情況。顯示的格式正是Unix通用的diff格式。
git push
git push origin master
把本地倉(cāng)庫(kù)中的HEAD提交到遠(yuǎn)端的倉(cāng)庫(kù)中。
master可以換成你想要推送的任何分支。
git remote
生成ssh秘鑰
ssh-keygen -t rsa -C "abcd@efgh.com" //github登錄郵箱
把生成的秘鑰添加到GitHub中,名字可以隨意,秘鑰內(nèi)容不可更改。
測(cè)試是否成功添加了
>ssh git@github.com
##正常情況下,回顯如下
PTY allocation request failed on channel 0
Hi Xxx! You've successfully authenticated, but GitHub does not provide shell access.
Connection to github.com closed.
然后遠(yuǎn)程推送
git remote add origin https://github.com/UserName/gitTest.git
git push -u origin master
第一次要添加 -u 這個(gè)參數(shù)。這樣Git不但會(huì)把本地的master分支內(nèi)容推送的遠(yuǎn)程新的master分支,還會(huì)把本地的master分支和遠(yuǎn)程的master分支關(guān)聯(lián)起來,在以后的推送或者拉取時(shí)就可以簡(jiǎn)化命令。
查看遠(yuǎn)程倉(cāng)庫(kù)
git remote -v
origin https://github.com/**/**.git (fetch)
origin https://github.com/**/**.git (push)
本地拉取遠(yuǎn)程代碼
從遠(yuǎn)程獲取最新版本到本地
# git fetch [遠(yuǎn)程分支,可選]:[新建本地分支,可選]
git fetch origin
把遠(yuǎn)程下載下來的代碼合并到本地倉(cāng)庫(kù),遠(yuǎn)程的和本地的合并
# 合并指定分支到當(dāng)前分支
# git merge [branch]
git merge origin/master
另一種方式
# git pull
git pull origin master
1.git pull需要指定特定遠(yuǎn)程分支參數(shù) 2.git pull指令會(huì)自動(dòng)拉取數(shù)據(jù)并將其合并至當(dāng)前分支,而git fetch只是拉取所有數(shù)據(jù)及分支,不影響本地?cái)?shù)據(jù),我們需要手動(dòng)合并。
本地向遠(yuǎn)程提交代碼
1.查看更改
# 顯示有變更的文件
$ git status
2.添加修改到暫存區(qū)
# 添加指定文件到暫存區(qū)
$ git add [file1] [file2] / [dir]
3.提交到倉(cāng)庫(kù)
# 提交暫存區(qū)到倉(cāng)庫(kù)區(qū)
$ git commit -m [message]
4.推送到遠(yuǎn)程
# 上傳本地指定分支到遠(yuǎn)程倉(cāng)庫(kù)
$ git push [remote] [branch]
# 推送所有分支到遠(yuǎn)程倉(cāng)庫(kù)
$ git push [remote] --all