GIT基本操作記錄

一. 本機(jī)配置

1. 添加用戶

git config –global user.name “XX”
git config –gloaba user.email “XX@163.com”

2. 查看git配置及用戶信息

git config –list

3. 生成SSH秘鑰(2種方式:1.git GUI圖形界面化操作; 2.git命令,即以下流程)

    1. 查看是否有秘鑰,有則備份然后刪除文件夾

cd ~/.ssh
ls

    1. 正式生成,輸入指令再 按三次回車,也就是第三次回車指紋密碼輸入可以為空
    ssh-keygen -t rsa -C “郵箱”
    1. 添加私鑰到 ssh(如果配置過指紋密碼就要輸入驗(yàn)證)

ssh -add id_rsa

    1. 進(jìn)入計(jì)算機(jī)系統(tǒng)用戶文件夾,找到id_rsa.pub,打開復(fù)制到github的setting的SSH keys當(dāng)中(該網(wǎng)站服務(wù)器可以添加多個(gè)ssh key公鑰)
    1. 測試本機(jī)是否有訪問GitHub的權(quán)限
      ssh git@github.com

二. 上傳GitHub了ssh后,開始建立兩端的repository(版本庫,倉庫) 并且相關(guān)聯(lián).

建立過程(2種方式):

    1. 先在本地新建->然后添加到遠(yuǎn)程端(具體步驟):
git init->git remote add origin git@xxx->在倉庫添加一些初始文件xx->
git add xx->git status->git commit -m “初始化倉庫”
git status->git commit -a->編寫你的代碼

修改之前提交過的文件->git diff xx->解決沖突之后提交

    1. git clone xx 克隆倉庫
    1. 以下只是本地創(chuàng)建工作區(qū)等操作

cd D:
cd Git
mkdir FirstProgram
cd FirstProgram
pwd(意思是查看”當(dāng)前工作目錄“的完整路徑)
git init(這個(gè)目錄變成git可以管理的倉庫,完成到這一步可以直接git remote add了)
git add readme.txt(添加到暫存區(qū)里)
git status(未提交時(shí) 出現(xiàn)紅色提醒)
git commit -m ‘提交時(shí)的注釋 描述’
git status(提交后 出現(xiàn)綠色提醒)
git commit -a(自動(dòng)更新變化的文件,auto)
git diff readme.txt(用來查看修改前后的對比,在有修改時(shí)使用)
git log(查看提交歷史,倒序記錄: 信息包括提交版本號,作者,時(shí)間,提交內(nèi)容)
git log –pretty=oneline(簡要查看歷史,每次修改顯示在一行)
git reset –hard HEAD^(把當(dāng)前的版本回退到上1個(gè)版本)
git reset –hard HEAD^^(把當(dāng)前的版本回退到上上1個(gè)版本)
git reset –hard HEAD~100(把當(dāng)前的版本回退到上100個(gè)版本)
git checkout –readme.txt(會撤銷修改但還沒添加到緩存區(qū)stage的內(nèi)容)
git reflog
git reset -hard 版本號
//查看內(nèi)容
cat readme.txt
//刪除文件
rm b.txt
git remote rm xxx(刪除遠(yuǎn)程端倉庫xxx, 比如origin是遠(yuǎn)程倉庫<即URL地址>別名)
git push -u sie-remote master(將本地文件提交到Github的sie-remote版本庫中<或者origin,版本庫的名字>。此時(shí)才更新了本地變更到github服務(wù)上.master是分支的意思)
//分支創(chuàng)建
git branch (顯示當(dāng)前分支,如:master)
git branch sie-branch(創(chuàng)建分支)
git checkout sie-branch(切換到新分支)
//從已有的分支創(chuàng)建新的分支(如從master分支),創(chuàng)建一個(gè)dev(develop簡寫)分支(相當(dāng)于復(fù)制分支)
git checkout -b dev
//把分支push到遠(yuǎn)端分支–>可以看到遠(yuǎn)端分支是push時(shí)產(chǎn)生的
vi page_cache.inc.php
git add page_cache.inc.php
git commit -a -m “added initial version of page cache”
git push origin sie-branch(把分支提交到遠(yuǎn)程服務(wù)器爪幻,只是把分支結(jié)構(gòu)和內(nèi)容提交到遠(yuǎn)程涝涤,并沒有發(fā)生和主干的合并行為)
//另一種push分支,如果是在當(dāng)前l(fā)oc-dev分支下,則可以只寫git push
git push origin loc-dev:remote-branch-dev
//分支拉取
git pull origin dev
或者:
運(yùn)行g(shù)it fetch(前提是已經(jīng)關(guān)聯(lián)了本地與遠(yuǎn)端),可以將遠(yuǎn)程分支信息獲取到本地淹接,
再運(yùn)行g(shù)it checkout -b loc-v2 origin/remote-branch-v2就可以將遠(yuǎn)程分支映射到本地命名為loc-v2的一分支
//本地分支合并
git checkout master(切換到新主干)
git merge sie-branch(把分支合并到主干)
//遠(yuǎn)程分支合并(多一個(gè)遠(yuǎn)端地址和一個(gè)反斜杠/)
git merge origin/b
git branch(顯示當(dāng)前分支是master)
git push(此時(shí)主干中也合并了sie-branch的代碼)
//沖突解決(Updated upstream 與==== 之間的是pull下來的內(nèi)容,若不需要?jiǎng)t刪除,也可以刪除本地的那一行)
git stash(暫存本地內(nèi)容)
git pull
git stash pop stash@{0}{ stash@{0}修改標(biāo)記,還原暫存的內(nèi)容}
//刪除分支(前提是被刪除的分支不是當(dāng)前所在分支,否則刪除不了)
git pull origin –delete dev
//另一種刪除分支
git push origin :dev
//消除master分支的追蹤
設(shè)置指定分支
git branch –set-upstream-to=origin/dev
取消對master的跟蹤
git branch –unset-upstream master

三. 概念分析

工作區(qū): 一般就是工程區(qū)或者模塊區(qū)(也就相當(dāng)于Android Studio的項(xiàng)目名稱根目錄),但是工作區(qū)下面的
隱藏文件夾.git不屬于工作區(qū)
版本庫: 就是.git目錄.版本庫里面存了很多東西纪蜒,其中最重要的就是stage(暫存區(qū))诈铛,還有Git為我們自動(dòng)創(chuàng)建了第一 個(gè)分支master,以及指向master的一個(gè)指針HEAD离福。

四. 其他操作

  • 1.顯示所有的遠(yuǎn)程倉庫

git remote -v
origin git@search.ued.taobao.net:projects/search.git (fetch)
origin git@search.ued.taobao.net:projects/search.git (push)
github git@github.com:yyfrankyy/search.git (fetch)
github git@github.com:yyfrankyy/search.git (push)

  • 2.重命名遠(yuǎn)程倉庫

git remote rename github gh
git remote
origin
gh

  • 3.刪除遠(yuǎn)程倉庫

git remote rm github
git remote
origin

  • 4.從遠(yuǎn)程倉庫抓取數(shù)據(jù)仇祭,更新本地倉庫:

$: git fetch origin
remote: Counting objects: 58, done.
remote: Compressing objects: 100% (41/41), done.
remote: Total 44 (delta 24), reused 1 (delta 0)
Unpacking objects: 100% (44/44), done.
From git://search.ued.taobao.net:projects/search.git

  • [new branch] product -> origin/product
  • 5.查看遠(yuǎn)程倉庫信息垦藏,可用于跟蹤別人的push:

git remote show origin

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末梆暖,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子掂骏,更是在濱河造成了極大的恐慌轰驳,老刑警劉巖,帶你破解...
    沈念sama閱讀 212,816評論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件弟灼,死亡現(xiàn)場離奇詭異级解,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)田绑,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,729評論 3 385
  • 文/潘曉璐 我一進(jìn)店門勤哗,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人掩驱,你說我怎么就攤上這事芒划《梗” “怎么了?”我有些...
    開封第一講書人閱讀 158,300評論 0 348
  • 文/不壞的土叔 我叫張陵民逼,是天一觀的道長泵殴。 經(jīng)常有香客問我,道長拼苍,這世上最難降的妖魔是什么袋狞? 我笑而不...
    開封第一講書人閱讀 56,780評論 1 285
  • 正文 為了忘掉前任,我火速辦了婚禮映屋,結(jié)果婚禮上苟鸯,老公的妹妹穿的比我還像新娘。我一直安慰自己棚点,他們只是感情好早处,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,890評論 6 385
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著瘫析,像睡著了一般砌梆。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上贬循,一...
    開封第一講書人閱讀 50,084評論 1 291
  • 那天咸包,我揣著相機(jī)與錄音,去河邊找鬼杖虾。 笑死烂瘫,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的奇适。 我是一名探鬼主播坟比,決...
    沈念sama閱讀 39,151評論 3 410
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼嚷往!你這毒婦竟也來了葛账?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 37,912評論 0 268
  • 序言:老撾萬榮一對情侶失蹤皮仁,失蹤者是張志新(化名)和其女友劉穎籍琳,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體贷祈,經(jīng)...
    沈念sama閱讀 44,355評論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡趋急,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,666評論 2 327
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了付燥。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片宣谈。...
    茶點(diǎn)故事閱讀 38,809評論 1 341
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖键科,靈堂內(nèi)的尸體忽然破棺而出闻丑,到底是詐尸還是另有隱情漩怎,我是刑警寧澤,帶...
    沈念sama閱讀 34,504評論 4 334
  • 正文 年R本政府宣布嗦嗡,位于F島的核電站勋锤,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏侥祭。R本人自食惡果不足惜叁执,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 40,150評論 3 317
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望矮冬。 院中可真熱鬧趋观,春花似錦敲霍、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,882評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽良漱。三九已至赔癌,卻和暖如春蔫仙,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背巨坊。 一陣腳步聲響...
    開封第一講書人閱讀 32,121評論 1 267
  • 我被黑心中介騙來泰國打工撬槽, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人趾撵。 一個(gè)月前我還...
    沈念sama閱讀 46,628評論 2 362
  • 正文 我出身青樓侄柔,卻偏偏與公主長得像,于是被迫代替她去往敵國和親鼓寺。 傳聞我的和親對象是個(gè)殘疾皇子勋拟,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,724評論 2 351

推薦閱讀更多精彩內(nèi)容

  • 1.git的安裝 1.1 在Windows上安裝Git msysgit是Windows版的Git勋磕,從https:/...
    落魂灬閱讀 12,656評論 4 54
  • 1. 安裝 Github 查看是否安裝git: $ git config --global user.name "...
    Albert_Sun閱讀 13,645評論 9 163
  • 哀箏一弄 《湘江曲 》 ① 妈候,聲聲寫盡湘波綠 。纖指十三弦 ② 挂滓,細(xì)將幽恨傳 苦银。 當(dāng)筵秋水慢 ③ ,玉柱斜飛雁 ④...
    聞香亭閱讀 352評論 0 0
  • 一赶站、事件 所有的GUI應(yīng)用都是事件驅(qū)動(dòng)的幔虏。事件主要由應(yīng)用的用戶操作產(chǎn)生的。但是事件可能由其他條件觸發(fā)贝椿,比如:一個(gè)網(wǎng)...
    交易狗二哈閱讀 9,863評論 2 5
  • 11月28日想括,星期二,晴 今天中午吃飯后烙博,女兒急忙坐在桌子前練鋼筆字瑟蜈,這么自覺把萄贰!我問她時(shí)铺根,她說明早你不是要去學(xué)校...
    月兒貝貝閱讀 191評論 0 1