æ建Gitæå¡å¨éè¦åå¤ä¸å°è¿è¡Linuxçæºå¨ï¼å¼ºçæ¨èç¨UbuntuæDebianï¼è¿æ ·ï¼éè¿å æ¡ç®åçaptå½ä»¤å°±å¯ä»¥å®æå®è£
ã
åè®¾ä½ å·²ç»æsudoæéçç¨æ·è´¦å·ï¼ä¸é¢ï¼æ£å¼å¼å§å®è£
ã
第ä¸æ¥ï¼å®è£
gitï¼
$ sudo apt-get install git
第äºæ¥ï¼å建ä¸ä¸ªgitç¨æ·ï¼ç¨æ¥è¿è¡gitæå¡ï¼
$ sudo adduser git
第ä¸æ¥ï¼å建è¯ä¹¦ç»å½ï¼
æ¶éææéè¦ç»å½çç¨æ·çå
¬é¥ï¼å°±æ¯ä»ä»¬èªå·±çid_rsa.pubæ件ï¼æææå
¬é¥å¯¼å
¥å°/home/git/.ssh/authorized_keysæ件éï¼ä¸è¡ä¸ä¸ªã
第åæ¥ï¼åå§åGitä»åºï¼
å
éå®ä¸ä¸ªç®å½ä½ä¸ºGitä»åºï¼åå®æ¯/srv/sample.gitï¼å¨/srvç®å½ä¸è¾å
¥å½ä»¤ï¼
$ sudo git init --bare sample.git
Gitå°±ä¼å建ä¸ä¸ªè£¸ä»åºï¼è£¸ä»åºæ²¡æå·¥ä½åºï¼å 为æå¡å¨ä¸çGitä»åºçº¯ç²¹æ¯ä¸ºäºå
±äº«ï¼æ以ä¸è®©ç¨æ·ç´æ¥ç»å½å°æå¡å¨ä¸å»æ¹å·¥ä½åºï¼å¹¶ä¸æå¡å¨ä¸çGitä»åºé常é½ä»¥.gitç»å°¾ãç¶åï¼æowneræ¹ä¸ºgitï¼
$ sudo chown -R git:git sample.git
第äºæ¥ï¼ç¦ç¨shellç»å½ï¼
åºäºå®å
¨èèï¼ç¬¬äºæ¥å建çgitç¨æ·ä¸å
许ç»å½shellï¼è¿å¯ä»¥éè¿ç¼è¾/etc/passwdæ件å®æãæ¾å°ç±»ä¼¼ä¸é¢çä¸è¡ï¼
git:x:1001:1001:,,,:/home/git:/bin/bash
æ¹ä¸ºï¼
git:x:1001:1001:,,,:/home/git:/usr/bin/git-shell
è¿æ ·ï¼gitç¨æ·å¯ä»¥æ£å¸¸éè¿ssh使ç¨gitï¼ä½æ æ³ç»å½shellï¼å 为æ们为gitç¨æ·æå®çgit-shellæ¯æ¬¡ä¸ç»å½å°±èªå¨éåºã
第å
æ¥ï¼å
éè¿ç¨ä»åºï¼
ç°å¨ï¼å¯ä»¥éè¿git cloneå½ä»¤å
éè¿ç¨ä»åºäºï¼å¨åèªççµèä¸è¿è¡ï¼
$ git clone git@server:/srv/sample.git
Cloning into 'sample'...
warning: You appear to have cloned an empty repository.
å©ä¸çæ¨éå°±ç®åäºã
管çå
¬é¥
å¦æå¢éå¾å°ï¼ææ¯ä¸ªäººçå
¬é¥æ¶éèµ·æ¥æ¾å°æå¡å¨ç/home/git/.ssh/authorized_keysæ件éå°±æ¯å¯è¡çãå¦æå¢éæå ç¾å·äººï¼å°±æ²¡æ³è¿ä¹ç©äºï¼è¿æ¶ï¼å¯ä»¥ç¨Gitosisæ¥ç®¡çå
¬é¥ã
è¿éæ们ä¸ä»ç»æä¹ç©Gitosisäºï¼å ç¾å·äººçå¢éåºæ¬é½å¨500强äºï¼ç¸ä¿¡æ¾ä¸ªé«æ°´å¹³çLinux管çåé®é¢ä¸å¤§ã
管çæé
æå¾å¤ä¸ä½è§æºä»£ç å¦çå½ï¼èä¸è§å工为çªè´¼çå
¬å¸ï¼ä¼å¨çæ¬æ§å¶ç³»ç»é设置ä¸å¥å®åçæéæ§å¶ï¼æ¯ä¸ªäººæ¯å¦æ读åæéä¼ç²¾ç¡®å°æ¯ä¸ªåæ¯çè³æ¯ä¸ªç®å½ä¸ãå 为Gitæ¯ä¸ºLinuxæºä»£ç æ管èå¼åçï¼æ以Gitä¹ç»§æ¿äºå¼æºç¤¾åºçç²¾ç¥ï¼ä¸æ¯ææéæ§å¶ãä¸è¿ï¼å 为Gitæ¯æé©åï¼hookï¼ï¼æ以ï¼å¯ä»¥å¨æå¡å¨ç«¯ç¼åä¸ç³»åèæ¬æ¥æ§å¶æ交çæä½ï¼è¾¾å°æéæ§å¶çç®çãGitoliteå°±æ¯è¿ä¸ªå·¥å
·ã
温馨提示:内容为网友见解,仅供参考