搭建Git私有倉庫

在自己電腦上搭建Git私有服務器
一開始肯定是百度踊兜,因為整個問題維度很低犹赖,大概一篇文章就夠用,篩選后應該就是這篇: git 服務器搭建董瞻,在自己服務器上搭建私有倉庫

步驟開始:

  1. 在服務器上(我用的是Ubuntu)安裝git寞蚌,簡單,不說了钠糊。

  2. 在客戶機上(Win10)安裝Git挟秤,簡單,不說了抄伍。

  3. 在服務器上添加一個用戶艘刚,一般都叫g(shù)it,這個不重要截珍。

     # useradd git -d /home/git -m -s /bin/bash
     -d:指定用戶目錄
     -m:如果目錄不存在則創(chuàng)建
     -s:可以指定用戶使用的命令
    
  4. 創(chuàng)建git倉庫

     $ su git
     $ cd ~
     $ git init --bare myserver.git
     --bare選項(bare漢語意思是:裸,裸的)初始化的版本庫(暫且稱為bare repository)只會生成一類文件:用于記錄版本庫歷史記錄的攀甚。
    

摘自git init 與 git init --bare 的區(qū)別,大概的意思就是生成了一些初始化的系統(tǒng)配置文件岗喉。

  1. 服務端設置從現(xiàn)在看就差不多了秋度,一會兒還有別的,先配置客戶機

  2. 生成密鑰對

     ssh-keygen -t rsa   // 會在 ~/.ssh/钱床,生成 'id_rsa' 和 'id_rsa.pub' 2個文件 
    

生成這倆東西的作用僅僅是以后免密登錄荚斯,摘自ssh-kengen的使用說明

  1. id_rsa.pub傳到服務器上诞丽,執(zhí)行cat id_rsa.pub >> ~/.ssh/authorized_keys鲸拥,此語句作用大家都懂。

  2. 命令行下輸入git clone git@IP:/home/git/myserver.git僧免,常用命令如下刑赶,含義顧名思義。

     $ git add .
     $ git commit -m "first commit"
     $ git push
    
  3. 這樣會報一個錯:

     remote: error: refusing to update checked out branch: refs/heads/master
     remote: error: By default, updating the current branch in a non-bare repository
     remote: error: is denied, because it will make the index and work tree inconsistent
     remote: error: with what you pushed, and will require 'git reset --hard' to match
     remote: error: the work tree to HEAD.
     remote: error:
     remote: error: You can set 'receive.denyCurrentBranch' configuration variable t
     remote: error: 'ignore' or 'warn' in the remote repository to allow pushing int
     remote: error: its current branch; however, this is not recommended unless you
     remote: error: arranged to update its work tree to match what you pushed in som
     remote: error: other way.
     remote: error:
     remote: error: To squelch this message and still keep the default behaviour, se
     remote: error: 'receive.denyCurrentBranch' configuration variable to 'refuse'.
     To root@101.200.159.138:/data0/htdocs/www/test/study/.git
      ! [remote rejected] master -> master (branch is currently checked out)
     ...
    

解決方法參照《git push錯誤 remote: error: refusing to update checked out branch: refs/heads/master解決方式》:

    這是由于git默認拒絕了push操作懂衩,需要進行設置撞叨,修改當前倉庫目錄下.git/config文件后面添加如下代碼:

    [receive]

    denyCurrentBranch = ignore

    重新git push即可
  1. 其實就能正常用了,在WebStorm中配置是這樣的:

    • VCS > Checkout from Version Control > Git
    • URL填入ssh://git@IP:PORT/home/git/myserver.git浊洞,OK牵敷。
  2. 我把本地目錄傳上去是個很繞的過程,先將WebStorm生成的工程備份(因為會重名)法希,myserver改名myserver2枷餐,在WebStrom當前工程目錄clone服務器上的倉庫,生成myserver目錄苫亦,然后將myserver2中的文件復制到myserver目錄中毛肋,然后執(zhí)行add怨咪,commitpush操作润匙,myserver2就可以刪掉了诗眨,這樣講需要的東西全部傳到服務器上,然后刪除myserver孕讳,因為一會兒在WebStorm中clone時會路徑?jīng)_突匠楚,最后在WebStorm中引入倉庫路徑就結(jié)束了。

  3. 安全問題:

    為安全考慮Git賬號只允許使用git-shell厂财。在passwd文件中找到git用戶芋簿,把/bin/bash直接修改成/usr/bin/git-shell 登錄root賬號,并修改git的用戶權(quán)限蟀苛。

    $ su
    # vim /etc/passwd
    

    這樣git用戶只能git-shell命令不能登錄了益咬。

    使用 su git 命令就會出現(xiàn)下面提示,git用戶就無法登錄到shell帜平,這樣就OK了幽告。

    # su git
    fatal: Interactive git shell is not enabled.
    hint: ~/git-shell-commands should exist and have read and execute access.
    

搭建私有Git倉庫過程大概就是這個樣子,以后在使用過程中發(fā)現(xiàn)什么問題裆甩,再說冗锁。##

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市嗤栓,隨后出現(xiàn)的幾起案子冻河,更是在濱河造成了極大的恐慌,老刑警劉巖茉帅,帶你破解...
    沈念sama閱讀 218,386評論 6 506
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件叨叙,死亡現(xiàn)場離奇詭異,居然都是意外死亡堪澎,警方通過查閱死者的電腦和手機擂错,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,142評論 3 394
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來樱蛤,“玉大人钮呀,你說我怎么就攤上這事∽蚍玻” “怎么了爽醋?”我有些...
    開封第一講書人閱讀 164,704評論 0 353
  • 文/不壞的土叔 我叫張陵,是天一觀的道長便脊。 經(jīng)常有香客問我蚂四,道長,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,702評論 1 294
  • 正文 為了忘掉前任证杭,我火速辦了婚禮田度,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘解愤。我一直安慰自己,他們只是感情好乎莉,可當我...
    茶點故事閱讀 67,716評論 6 392
  • 文/花漫 我一把揭開白布送讲。 她就那樣靜靜地躺著,像睡著了一般惋啃。 火紅的嫁衣襯著肌膚如雪哼鬓。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,573評論 1 305
  • 那天边灭,我揣著相機與錄音异希,去河邊找鬼。 笑死绒瘦,一個胖子當著我的面吹牛称簿,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播惰帽,決...
    沈念sama閱讀 40,314評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼憨降,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了该酗?” 一聲冷哼從身側(cè)響起授药,我...
    開封第一講書人閱讀 39,230評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎呜魄,沒想到半個月后悔叽,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,680評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡爵嗅,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,873評論 3 336
  • 正文 我和宋清朗相戀三年娇澎,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片操骡。...
    茶點故事閱讀 39,991評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡九火,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出册招,到底是詐尸還是另有隱情岔激,我是刑警寧澤,帶...
    沈念sama閱讀 35,706評論 5 346
  • 正文 年R本政府宣布是掰,位于F島的核電站虑鼎,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜炫彩,卻給世界環(huán)境...
    茶點故事閱讀 41,329評論 3 330
  • 文/蒙蒙 一匾七、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧江兢,春花似錦昨忆、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,910評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至叔磷,卻和暖如春拢驾,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背改基。 一陣腳步聲響...
    開封第一講書人閱讀 33,038評論 1 270
  • 我被黑心中介騙來泰國打工繁疤, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人秕狰。 一個月前我還...
    沈念sama閱讀 48,158評論 3 370
  • 正文 我出身青樓稠腊,卻偏偏與公主長得像,于是被迫代替她去往敵國和親封恰。 傳聞我的和親對象是個殘疾皇子麻养,可洞房花燭夜當晚...
    茶點故事閱讀 44,941評論 2 355

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