GitHub Education Training – Module 1 : Git Basic

หลังจากที่เราสมัคร GitHub for Education กันไปเราจะมาทำ Training ในหมวด GitHub Campus Advisors กัน หลังจากที่เราเตรียมตัวการใช้ Git ใน Module 0 ไปแล้ว เราจะมาทำความเข้าใจ Git Model ซึ่งประกอบไปด้วย Working Directory, Staging และ Repository

Module 1 : Git Basic

Git เป็นระบบที่ใช้ในการควบคุมเวอร์ชั่น Version Control System และใช้ในการ Track Progress นอกจากนี้ยังสามารถบันทึก History โดยการ Snapshot ซึ่งสามารถย้อนกลับไปเวอร์ชั่นก่อนหน้าได้ อีกทั้งยังเป็นระบบศูนย์กลางในการทำงานร่วมกับทีม ทำให้สามารถทำงานพร้อมกับเป็นแบบ Parallel ได้ โดยสามารถเก็บ Track แยกจากการทำงานร่วมกับกับทีม เก็บไว้ใน Repository ของแต่ละ Project ของใครของมัน ซึ่งควรมี Repository ของตัวเองแยกออกมาจาก Production

Advisor-03.png

Git เปรียบเหมือนโต๊ะทำงานประกอบไปด้วย Working Directory เหมือนพื้นที่บนโต๊ะทำงาน, Staging เป็นเหมือนแฟ้มใส่เอกสาร, Repository เป็นเหมือนตู้เก็บแฟ้มเอกสารอีกที

  • สร้าง Project ขึ้นมาโดยตั้งชื่อว่า demo
# git --version
# git init demo
# cd demo
# touch readme.md
# git add readme.md
# git reset readme.md
# git add .
# git commit -m 'commit empty readme'
# vi readme.md
---
# Directions for exercise-1
* First, read through the slides in slides-1 and slides-2
---
  • ลองดูสถานะบน Working Directory
# git status
On branch master
Changes not staged for commit:
  (use "git add ..." to update what will be committed)
  (use "git checkout -- ..." to discard changes in working directory)

        modified:   readme.md

no changes added to commit (use "git add" and/or "git commit -a")
  • เปรียบเทียบความแตกต่างของไฟล์ 2 ไฟล์ ที่อยู่บน Working Directory กับ Staging หากใช้คำสังแล้วมีผลลัพธ์ออกมาแสดงว่ามีความแตกต่าง ให้เพิ่มไฟล์เข้าไปใน Staging
# git diff
diff --git a/readme.md b/readme.md
index e69de29..56d43e0 100644
--- a/readme.md
+++ b/readme.md
@@ -0,0 +1,3 @@
+# Directions for exercise-1
+
+* First, read through the slides in slides-1 and slides-2
# git add readme.md
# git diff
  • เปรียบเทียบความแตกต่างของไฟล์ 2 ไฟล์ ที่อยู่บน Staging กับ Repository
# git diff --staged
diff --git a/readme.md b/readme.md
index e69de29..d9a3b15 100644
--- a/readme.md
+++ b/readme.md
@@ -0,0 +1,4 @@
+# Directions for exercise-1
+
+* First, read through the slides in slides-1 and slides-2
+* Second, answer the reflection questions at the of slides-1
  • ตรวจสอบ Log ที่ทำการ Commit
# git log
commit 63d8310e97d3bc62c22d3759d39b2f0395de4c31
Author: root <fsdotnetdev@gmail.com>
Date:   Thu Jul 19 15:46:41 2018 +0700

    commit empty readme
  • ทำการ Commit อีกครั้งหนึ่ง แล้วลองดูสถานะบน Working Directory
# git commit -m 'add basic directions to readme.md'
[master 1e4bf4e] add basic directions to readme.md
1 file changed, 4 insertions(+)
# git status
On branch master
nothing to commit, working directory clean
# git diff
# git diff --staged

 

Leave a Reply

Your email address will not be published. Required fields are marked *