Skip to content

clone (คัดลอก repository)

การ clone คือการคัดลอก repository จาก remote มายัง local เครื่องของเรา

bash
# คำสั่งพื้นฐาน
git clone https://github.com/user/repo.git

# clone พร้อมกำหนดชื่อโฟลเดอร์
git clone https://github.com/user/repo.git my-folder-name

remote (เชื่อมต่อกับ repository ที่อยู่บน server อื่น)

remote คือการเชื่อมต่อกับ repository ที่อยู่บน server อื่น

bash
# ดูรายการ remote ทั้งหมด
git remote -v

# เพิ่ม remote
git remote add origin https://github.com/user/repo.git

# เปลี่ยน URL ของ remote
git remote set-url origin https://github.com/user/new-repo.git

ความสัมพันธ์ local-remote

push (ส่งการเปลี่ยนแปลงจาก local ไปยัง remote repository)

การ push คือการส่งการเปลี่ยนแปลงจาก local ไปยัง remote repository

bash
# push ไปยัง remote branch
git push origin main

# push และตั้งค่า upstream
git push -u origin main

# push tag
git push --tags

pull (ดึงการเปลี่ยนแปลงจาก remote มายัง local และทำการ merge โดยอัตโนมัติ)

การ pull คือการดึงการเปลี่ยนแปลงจาก remote มายัง local และทำการ merge โดยอัตโนมัติ

bash
# pull จาก remote
git pull origin main

# pull โดยใช้ rebase แทน merge
git pull --rebase origin main

fetch (ดึงข้อมูลจาก remote มาที่ local แต่ยังไม่ทำการ merge)

การ fetch คือการดึงข้อมูลจาก remote มาที่ local แต่ยังไม่ทำการ merge

bash
# fetch ข้อมูลทั้งหมดจาก remote
git fetch origin

# fetch เฉพาะ branch ที่ต้องการ
git fetch origin main

# fetch และดูความแตกต่าง
git fetch && git diff origin/main