【轉(zhuǎn)】把Git Repository建到U盤上去

  • Git很火。原因:

    • 1.它是大神Linus Torvalds的作品啸驯,天然地具備神二代的氣質(zhì)和品質(zhì)客扎;
    • 2.促進(jìn)了生產(chǎn)力的發(fā)展,Git的分布式版本控制理念罚斗,并非首創(chuàng)徙鱼,但非常適合開源社區(qū)的協(xié)作方式(不存在master-slave的關(guān)系)
  • GitHub很好,號(hào)稱代碼界的facebook.

facebook针姿,twitter袱吆,Microsoft,vmware距淫,redhat绞绒,LinkedIn,Yahoo等公司都在GitHub上有建立數(shù)目不等的repositories榕暇。一些知名開源項(xiàng)目处铛,例如jQuery饲趋, Ruby on Rails,node.js都把src code寄存于GitHub上撤蟆。GitHub太成功了奕塑,以至于使很多人產(chǎn)生誤解,以為git就是GitHub家肯,使用git就必須連接GitHub龄砰。事實(shí)上,GitHub只是一個(gè)提供git repository hosting服務(wù)的網(wǎng)站讨衣。

  • 本文試圖講解如何在U盤上創(chuàng)建git repository(使U盤成為你的私有代碼云)换棚;以及如何在不同客戶端進(jìn)行同步作業(yè)。把git repository建在USB盤上能滿足多種應(yīng)用場(chǎng)景反镇,特別是:

    • 1.注重私密性(GitHub上普通賬號(hào)不能創(chuàng)建私有repository)
    • 2.網(wǎng)速很慢固蚤,甚至斷網(wǎng)的時(shí)候需要同步
  • 但不適合需要強(qiáng)collaborate的項(xiàng)目。

<h3>前提條件</h3>

  • 先把git給裝好了…然后…我們有了兩臺(tái)git ready的電腦歹茶,和一個(gè)U盤夕玩。

<h3>開始,1惊豺,初始化本地repository</h3>

  • 假設(shè)有一個(gè)存在的項(xiàng)目燎孟,需要由git接管版本控制,那么來到這個(gè)%projct_home%目錄(例如我的git_sandbox)下
  • <h5>step 1.1</h5>
    • 初始化
    • $ git init git_sandbox
  • <h5>step 1.2</h5>
    • 創(chuàng)建.gitignore文件(在%project_home%下尸昧,只對(duì)這個(gè)project有效)揩页,排除路徑下不需用被提交到repository中的文件(例如.svn,.class烹俗, Thumbs.db…)
  • <h5>step 1.3</h5>
    • 查看當(dāng)前文件狀態(tài)爆侣,可以看到有一堆”untracked files”
    • $ git status
  • <h5>step 1.4</h5>
    • 把所有”untracked files”加入索引
    • $ git add .
  • <h5>step 1.5</h5>
    • 提交到repository
    • $ git commit -m "initialized."

<h3>2, 搞到U盤上去</h3>

  • <h5>step 2.1</h5>

    • 插上U盤幢妄,查看U盤掛載路徑

    • $ mount

    • 我的路徑是”/Volumes/KINGSTON”

  • <h5>step 2.2</h5>

    • 在U盤上創(chuàng)建一個(gè)repository兔仰,
    • $ mkdir /Volumes/KINGSTON/workspace/usbGitSpace/gitusb_sandbox
    • $ cd /Volumes/KINGSTON/workspace/usbGitSpace/gitusb_sandbox
    • $ git init --bare
    • 使用–bare選項(xiàng)創(chuàng)建的repository被稱作bare repository,它不會(huì)包含working目錄(只包含.git目錄下的內(nèi)容)磁浇,所以不適合在上面改code斋陪。bare repository主要的作用就是被push和pull朽褪。根據(jù)GitFaq的說法:

A quick rule of thumb is to never push into a repository that has a work tree attached to it, until you know what you are doing.

  • <h5>step 2.3</h5>

    • 回到本地%project_home%置吓,把初始化后的usb repository添加為remote repository
    • $ git remote add usb /Volumes/KINGSTON/workspace/usbGitSpace/gitusb_sandbox
    • 將本地的repository push到usb上
    • $ git push usb master
  • <h3>3, 同步到另一臺(tái)電腦</h3>

  • <h5>step 3.1</h5>

    • 在另一臺(tái)電腦上先創(chuàng)建一個(gè)本地repository
    • $ cd ~/my_gitspace/sandbox_win
    • $ git init
  • <h5>step 3.2</h5>

    • 把U盤插到這個(gè)電腦上缔赠,查看當(dāng)前掛載的路徑衍锚,添加U盤作為當(dāng)前repository的remote repository
    • $ git remote add usb /cygdrive/f/workspace/usbGitSpace/gitusb_sandbox
  • <h5>step 3.3</h5>

    • 把U盤上的內(nèi)容拉下來
    • $ git pull usb master
      好了,代碼同步到另一臺(tái)機(jī)器上了
  • <h3>4嗤堰, 測(cè)試一下</h5>

  • <h5>step 4.1</h5>

    • 改動(dòng)一下文件戴质,比如README.txt
  • <h5>step 4.2</h5>

    • $ git add README.txt
    • $ git commit -m "update from another laptop"
    • $ git push usb master
  • <h5>step 4.3</h5>

    • 插回原來的laptop
    • $ git pull usb master
  • <h5>step 4.4</h5>

    • 查看提交歷史
    • $ git log
  • 發(fā)現(xiàn)兩臺(tái)電腦上提交的記錄都在log里面

  • 好了度宦,成功。現(xiàn)在U盤成為了你的GitHub告匠,你和你的代碼之間戈抄,再?zèng)]有阻隔。

  • 當(dāng)然后专,最后划鸽,需要定期給U盤做一個(gè)備份。技術(shù)發(fā)展到今天戚哎,數(shù)據(jù)安全靠天吃飯的日子已經(jīng)一去不復(fù)返了裸诽,沒有什么U盤,硬盤是靠得住的型凳。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末丈冬,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子甘畅,更是在濱河造成了極大的恐慌埂蕊,老刑警劉巖,帶你破解...
    沈念sama閱讀 216,470評(píng)論 6 501
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件橄浓,死亡現(xiàn)場(chǎng)離奇詭異粒梦,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)荸实,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,393評(píng)論 3 392
  • 文/潘曉璐 我一進(jìn)店門匀们,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人准给,你說我怎么就攤上這事泄朴。” “怎么了露氮?”我有些...
    開封第一講書人閱讀 162,577評(píng)論 0 353
  • 文/不壞的土叔 我叫張陵祖灰,是天一觀的道長(zhǎng)。 經(jīng)常有香客問我畔规,道長(zhǎng)局扶,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,176評(píng)論 1 292
  • 正文 為了忘掉前任叁扫,我火速辦了婚禮三妈,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘莫绣。我一直安慰自己畴蒲,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,189評(píng)論 6 388
  • 文/花漫 我一把揭開白布对室。 她就那樣靜靜地躺著模燥,像睡著了一般咖祭。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上蔫骂,一...
    開封第一講書人閱讀 51,155評(píng)論 1 299
  • 那天么翰,我揣著相機(jī)與錄音,去河邊找鬼辽旋。 笑死硬鞍,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的戴已。 我是一名探鬼主播固该,決...
    沈念sama閱讀 40,041評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼糖儡!你這毒婦竟也來了伐坏?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 38,903評(píng)論 0 274
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤握联,失蹤者是張志新(化名)和其女友劉穎桦沉,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體金闽,經(jīng)...
    沈念sama閱讀 45,319評(píng)論 1 310
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡纯露,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,539評(píng)論 2 332
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了代芜。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片埠褪。...
    茶點(diǎn)故事閱讀 39,703評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖挤庇,靈堂內(nèi)的尸體忽然破棺而出钞速,到底是詐尸還是另有隱情,我是刑警寧澤嫡秕,帶...
    沈念sama閱讀 35,417評(píng)論 5 343
  • 正文 年R本政府宣布渴语,位于F島的核電站,受9級(jí)特大地震影響昆咽,放射性物質(zhì)發(fā)生泄漏驾凶。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,013評(píng)論 3 325
  • 文/蒙蒙 一掷酗、第九天 我趴在偏房一處隱蔽的房頂上張望调违。 院中可真熱鬧,春花似錦汇在、人聲如沸翰萨。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,664評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)亩鬼。三九已至,卻和暖如春阿蝶,著一層夾襖步出監(jiān)牢的瞬間雳锋,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,818評(píng)論 1 269
  • 我被黑心中介騙來泰國(guó)打工羡洁, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留玷过,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 47,711評(píng)論 2 368
  • 正文 我出身青樓筑煮,卻偏偏與公主長(zhǎng)得像辛蚊,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子真仲,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,601評(píng)論 2 353

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