Monday, May 25, 2015

Xem Git - Hệ thống quản lý source code (Part 1)

4. Git server (Github)
Trong phần này chúng ta tiếp tục với git server, bạn có thể tự tạo cho mình một git server riêng khá đơn giản, tuy nhiên bài viết này chỉ đề cập đến Github, một git server được sử dụng phổ biến nhất thế giới, rất nhiều hãng đặt source code của họ tại Github bao gồm cả Facebook :D

Ở phần trước là bài viết về cách làm thế nào để làm việc với git client, bài viết này sẽ tiếp tục bàn về cách để kết nối git client với git server (Github)

4.1 Xác thực git client
Bước đầu tiên cần làm là xác thực git client với git server thông qua SSH key.

Git client
Tạo khóa SSH key trên terminal của máy git client

$ ls -al ~/.ssh
$ ssh-keygen -t rsa -b 4096 -C "luongduyninh@gmail.com"
Generating public/private rsa key pair.
Enter file in which to save the key (/home/ninhld/.ssh/id_rsa):  Enter
Enter passphrase (empty for no passphrase): Enter
Enter same passphrase again: Enter
Your identification has been saved in /home/ninhld/.ssh/id_rsa.
Your public key has been saved in /home/ninhld/.ssh/id_rsa.pub.
The key fingerprint is:
11:22:33:44:55:66:77:88:99:aa:bb:cc:dd:ee:ff:f7 luongduyninh@gmail.com
The key's randomart image is:
+--[ RSA 4096]----+
|  .o ..o         |
|   .= =          |
| ..o.B.          |
|. o.*...         |
| . o = .S        |
|.   + o          |
| o o             |
|  o .            |
|   . .E          |
+-----------------+
$ cat ~/.ssh/id_rsa.pub
Lệnh trên sẽ show ra SSH key, bạn copy đoạn key đó để tiếp tục bước xác thực sau trên github server

Git server
Tạo một tài khoản Github - It is free :D

Login Github

Enter Settings

Enter SSH Keys


Kiểm tra kết nối đến github, kết quả như dưới là ok:
$ ssh -T git@github.com
The authenticity of host 'github.com (192.30.252.129)' can't be established.
RSA key fingerprint is 16:27:ac:a5:76:28:2d:36:63:1b:56:4d:eb:df:a6:48.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added 'github.com,192.30.252.129' (RSA) to the list of known hosts.
Permission denied (publickey).

4.2 Tạo repository




Từ máy client
git clone https://github.com/eslinux/Cproject.git

Tiến hành các thao tác add/modify/delete/commit/... như bình thường
Update lên github
git push -u origin master

5. Owner git server
5.1 Server
Create the user (the -d option specifies the home directory)
useradd -m -d /home/git git
Set the git user's shell
usermod -s /bin/git-shell gitor (using which git-shell)
usermod -s /usr/bin/git-shell git


Set up public key authentication (as the git user)
su -s /bin/bash gitcd /home/gitmkdir .ssh && chmod 700 .ssh && cd .sshtouch authorized_keys && chmod 600 authorized_keys

And your Git user is ready. Everyone who needs access must
have their public key in /home/git/.ssh/authorized_keys

Add a repository on your server; create bare repo (as the git user)
su -s /bin/bash gitcd /home/gitmkdir myrepo.git && cd myrepo.gitgit init --bare
5.2 Client
git remote add origin git@<server domain>:OpenglES.gitorgit remote add origin git@<server ip>:OpenglES.git
git push origin master
git clone git@<server ip>:OpenglES.git
git pull

6. Sử dụng Git GUI
Tất cả các phần trên đều sử dụng git với command line là chính (gọi là Shell), tuy nhiên git cũng cung cấp cho chúng ta một phiên bản phần mềm với giao diện trực quan

Install
yum install git-gui




Leave a Reply

Subscribe to Posts | Subscribe to Comments

- Copyright © Lập trình hệ thống nhúng Linux . Powered by Luong Duy Ninh -