วันจันทร์ที่ 16 มิถุนายน พ.ศ. 2557

มาเล่น GitLab กัน

ผมมักโดนถามคำถามเกี่ยวกับเครื่องมือที่ผมใช้งานอยู่บ่อยครั้ง ผมมักก็ตอบว่า Git, GitHub และตามด้วยประโยคที่ว่า “Private Project ต้องเสียเงิน ถ้าเป็น OpenSource Project ใช้ฟรี” ก็เลยมีหลายท่านถามว่า ​”เอาแบบ Private Project ไม่ต้องเสียเงินได้ไหม” งั้นแนะนำให้ใช้ GitLab เลยครับ เจ้า GitLab เหมาะสำหรับคนที่ใช้ GitHub มาก เพราะการใช้งานบนเว็บเหมือนกัน ไม่นับบน command line นะครับ :P นอกจากจะติดตั้งในหน่วยงานได้แล้วยังสามารถสร้าง Private Project ได้แบบไม่ต้องเสียเงินด้วย ตอบโจทย์เลยใช่มั๊ยครับ GitLab มีด้วยกัน 2 รุ่น คือ




  • GitLab Comminuty

  • GitLab Enterprise



ดูความแตกต่างของแต่ละรุ่นได้ที่หน้าเว็บ GitLab กันได้ นอกจากนี้ยังมี Jitlab CI ด้วย ซึ่งเราสามารถผูก GitLab กับ GitLab CI ได้ด้วย เอาไว้วันหลังจากมาเล่าให้ฟังว่าเล่นยังไง สำหรับวิธีการติดตั้ง GitLab นั้นมีหลายวิธี แต่ผมขอเลือกวิธีง่ายระดับมาก โดยใช้ GitLab Omnibus (มีวิธีแบบง่ายมากๆ อยู่ขอไม่กล่าวถึงละกันนะครับ) ลองมาติดตั้ง GitLab Community เล่นกันครับ



เริ่มจากดาวน์โหลด GitLab Omnibus กันก่อน



wget https://downloads-packages.s3.amazonaws.com/ubuntu-12.04/gitlab_6.9.2-omnibus.1-1_amd64.deb



ติดตั้ง package ที่ต้องใช้งาน



sudo apt-get install openssh-server postfix



ติดตั้ง gitlab



sudo dpkg -i gitlab_6.9.2-omnibus.1-1_amd64.deb



สร้าง file config



sudo mkdir -p /etc/gitlab



sudo touch /etc/gitlab/gitlab.rb



sudo chmod 600 /etc/gitlab/gitlab.rb



แก้ไข /etc/gitlab/gitlab.rb เพิ่มส่วน external_url ระบุ url ของ server เราครับ



external_url "http://redgitlab.cloudapp.net"



สั่ง reconfig ตั้งค่า gitlab ตาม config ใหม่



sudo gitlab-ctl reconfigure



ดูการตั้งค่าเพิ่มเติมได้ที่หน้า configuration เปิดเบราเซอร์ไปที่ gitlab server ของคุณตัวอย่าง http://redgitlab.cloudapp.net ล็อกอินด้วย root รหัสผ่าน 5iveL!fe





หน้าล็อกอิน





หน้า Dashboard





ลองสร้าง project ตัว gitlab สร้าง git repository ให้เราเรียบร้อยพร้อม commit code





ลอง clone gitlab-omnibus มาจาก gitlab repo จากนั้น push ไปที่ gitlab server ของเรา





ข้อมูลครบถ้วน





แสดงผล markdown ได้สวยงาม





รายการ commit





Network Branch ของ Project





สถิติการ commit, add, delete ของ project มีข้อมูลรายบุคคลด้วย


ไม่มีความคิดเห็น:

แสดงความคิดเห็น