Topic 1: Gitlab basic command
git config
git init
git clone
git remote
git add
git rm
git mv
git commit
git push
git checkout
git fetch
git merge
git pull [git fetch + git merge]
git log
git reset
git blame
เป็นคำสั่งที่ใช้กำหนดข้อมูลของผู้ใช้ เพื่อระบุตัวตนและคุณสมบัติอื่น
ๆ ของ Git มีคำสั่งดังนี้
git config --global user.name "your name"
git config --global user.email "your email"
git config –list //แสดงการ config ทั้งหมด
git config --global user.email "your email"
git config –list //แสดงการ config ทั้งหมด
git init
เป็นคำสั่งที่ใช้สร้าง Git ขึ้นมาภายใต้โฟลเดอร์หรือ
Path โดยสร้างโฟลเดอร์ .git ขึ้นมาเพื่อใช้เก็บ
สำรองข้อมูล การเปลี่ยนแปลง และคุณสมบัติอื่น
ๆ ของ Git มีคำสั่งดังนี้
git init
git clone
เป็นคำสั่งที่ใช้ดึงประวัติทั้งหมดบน Repository
ของเพื่อนร่วมทีม หรือของตัวเองบน Git
มาที่เครื่องที่ใช้งาน มีคำสั่งดังนี้
git clone <URL>
git remote
เป็นคำสั่งที่ใช้เพิ่ม URL ของ
Repository เข้าไปยัง Git โดยชื่อว่า
origin ส่วนใหญ่จะเป็นชื่อ Default
แต่สามารถตั้งชื่ออื่น ๆ ได้ มีคำสั่งดังนี้
git remote add origin <URL>
git remote rm origin //ถ้าหากต้องการลบ remote repository
git remote rm origin //ถ้าหากต้องการลบ remote repository
git status
เป็นคำสั่งที่ใช้ตรวจสอบสถานะของ Source
Code ใน Git ซึ่งมีคำสั่งดังนี้
git status
สถานะของ
Source Code ที่เก็บอยู่ใน
Git มีดังนี้
1. Untracked เป็นสถานะที่
Source Code ถูกเพิ่มเข้ามาใหม่
และยังไม่ได้ถูกเก็บไว้ใน Git
2. Working Directory หรือ
Modified
เป็นสถานะที่มีการเปลี่ยนแปลงหรือแก้ไข Source Code
3. Staged เป็นสถานะที่
Source Code กำลังเตรียมที่จะ
Commit เพื่อยืนยันการเปลี่ยนแปลงก่อนที่จะเก็บลงใน Local
Repository (ที่เครื่องตัวเอง)
git add
เป็นคำสั่งที่ใช้เพิ่มการเปลี่ยนแปลงของ Source
Code เข้าไปที่สถานะ Staged มีคำสั่งดังนี้
git add . //add
ทั้งหมดใน folder นั้น
git add folder/*.php, //add เฉพาะ folder ที่มี file นามสกุล .php ทั้งหมด
git add <file1 file2 …..> //add เฉพาะไฟล์ที่แก้ไขเท่านั้น
git add folder/*.php, //add เฉพาะ folder ที่มี file นามสกุล .php ทั้งหมด
git add <file1 file2 …..> //add เฉพาะไฟล์ที่แก้ไขเท่านั้น
git rm
เป็นคำสั่งที่ใช้ลบไฟล์หรือโฟเดอร์ มีคำสั่งดังนี้
git rm --cached <*, folder/*.php, file> //นำไฟล์ที่อยู่ในสถานะ stage ให้เป็น unstage
git rm -r folder //ลบเฉพาะ folder
git rm -r folder //ลบเฉพาะ folder
git mv
เป็นคำสั่งที่ใช้ย้ายไฟล์หรือโฟเดอร์ หรือใช้เปลี่ยนชื่อ มีคำสั่งดังนี้
git mv a.txt b.txt //เปลี่ยนชื่อไฟล์
เช่น จาก a เป็น b
git mv a.txt ../a.txt //ย้ายไฟล์ออกไปยัง path อื่น
git mv a.txt ../a.txt //ย้ายไฟล์ออกไปยัง path อื่น
git commit
เป็นคำสั่งที่ใช้ยืนยัน Source Code ที่อยู่ในสถานะ
Staged เข้าไปเก็บไว้ที่ Local
Repository (ที่เครื่องเราเอง) มีคำสั่งดังนี้
git commit -m " message"
git branch
เป็นคำสั่งที่ใช้ในแสดง branch หรือห้องสำหรับใช้ในการพัฒนา
ซึ่งใช้ในการทดสอบไฟล์ต่าง ๆ มีคำสั่งดังนี้
git branch //แสดง
list ของ branch
git branch <name> //สร้าง branch
git branch -d <name> //ลบ branch
git branch <name> //สร้าง branch
git branch -d <name> //ลบ branch
git push
เป็นคำสั่งที่ใช้ส่งการเปลี่ยนแปลงของ Source
Code ที่เก็บอยู่บน Local Repository (ที่เครื่องเราเอง) ขึ้นไปยัง
Remote Repository มีคำสั่งดังนี้
git push origin <branch server >
git push origin --delete <branch server > //ใช้ในการลบ
git push origin <branch local>:<branch server>
//เป็นการนำ branch จากเครื่องเราที่ใช้ทดสอบอัพไปยัง server
git push origin --delete <branch server > //ใช้ในการลบ
git push origin <branch local>:<branch server>
//เป็นการนำ branch จากเครื่องเราที่ใช้ทดสอบอัพไปยัง server
git checkout
เป็นคำสั่งที่ใช้ในการสลับ Working
Directory ไปยัง Branch หรือ Commit
ที่ระบุ มีคำสั่งดังนี้
git checkout <branch name> //ย้ายการทำงานไปที่ Branch ที่ระบุ
git checkout <commit id> //ย้ายการทำงานไปที่ commit id ที่ระบุ
git checkout -b <branch name> //สร้าง Branch ใหม่ หรือสลับการทำงานมาที่ Branch นี้
git checkout <commit id> <file> //นำไฟล์ที่ลบมาจาก commit id ที่กำหนด
git checkout <commit id> //ย้ายการทำงานไปที่ commit id ที่ระบุ
git checkout -b <branch name> //สร้าง Branch ใหม่ หรือสลับการทำงานมาที่ Branch นี้
git checkout <commit id> <file> //นำไฟล์ที่ลบมาจาก commit id ที่กำหนด
git fetch
เป็นคำสั่งที่ใช้ยืนยันการเปลี่ยนแปลงของ Source
Code ล่าสุดที่อยู่บน Remote Repository ลงมายัง
Local Repository (ที่เครื่องเราเอง) แต่ยังไม่ได้รวม
Source Code (Merge) มีคำสั่งดังนี้
git fetch origin master
git merge //ทำการรวมการเปลี่ยนแปลงหลัง fetch
git merge //ทำการรวมการเปลี่ยนแปลงหลัง fetch
git merge
เป็นคำสั่งที่ใช้ในการรวม Branch หรือ
Commit เข้าด้วยกัน มีคำสั่งดังนี้
git merge <name branch> //เป็นการรวม
Branch หรือ Commit เข้าด้วยกัน
git pull [git fetch + git merge]
เป็นคำสั่งที่ใช้ยืนยันการเปลี่ยนแปลงของ Source
Code ล่าสุดที่อยู่บน Remote Repository ลงมายัง
Local Repository และทำแบบ Auto
Merge มีคำสั่งดังนี้
git pull origin master
git log
เป็นคำสั่งที่ใช้แสดงประวัติของ Commit
ที่เก็บไว้ใน Repository มีคำสั่งดังนี้
git log //แสดงรายละเอียดวันที่และคนที่แก้ไข
git log –-oneline //แสดงรายละเอียดแบบสั้นๆ
git log –-oneline //แสดงรายละเอียดแบบสั้นๆ
git reset
เป็นคำสั่งที่ใช้ย้อนกลับไปที่เวอร์ชั่นก่อนหน้า โดยระบุ Branch
หรือ Commit Id
ข้อควรระวัง: คำสั่งนี้ทำให้ประวัติของ Commit ที่เก็บไว้ใน
Repository หายไป
git reset --hard/soft <commit id>
ซึ่งมี Option ที่สำคัญ 3
ตัวดั่งนี้
- soft ย้อนการเปลี่ยนแปลง และคงสถานะการเปลี่ยนแปลงของ Source
Code ไว้ที่สถานะ Staged
-
hard ย้อนการเปลี่ยนแปลงแบบลบทับการเปลี่ยนแปลงก่อนหน้าทั้งหมด
git blame
เป็นคำสั่งที่ใช้แสดงความเปลี่ยนแปลงล่าสุดของไฟล์
git blame <file>
ความคิดเห็น
แสดงความคิดเห็น