Category Source control

Source control, Version Comtrol, SCM. SVN

เอา Secret ที่ลืมไว้ออกจาก Code ด้วย BFG Repo-Cleaner

หลังจากที่ได้ Review Code พบว่าบางส่วนมันหลุดไป แล้วมี Endpoint + API Key ติดไปด้วย เลยต้องรีบเอาออกไป ถ้าหลุดไปเดี๋ยวยาว ลองมาปัดฝุ่นดู เราเคยใช้ BFG Repo-Cleaner เมื่อหลายปีก่อนลบพวกนี้ในงานอยู่แล้ว แต่มันจดๆไว้ใน Notion รอบนี้เลย ย้ายมาลง Blog เลยดีกว่า ทำไมต้องใช้ BFG Repo-Cleaner สั่่นๆ Simple แล้วตัว Tools นี้มันมี Feature พวกนี้มาให้เลย ถ้าใช้ git-filter repo น่าจะท่ายากไปนะ ถ้าพร้อมแล้วไป Download BFG…

ทำไมการตรวจสอบ .gitmodules / git link ถึงสำคัญ

เขียน KM + แชร์ ปัญหาในองค์กรมานาน และผมคิดว่าปัญหาแบบนี้น่าจะเจอทุกที่ ที่ทำ Submodule ไว้ เลยเอามาแชร์ดีกว่า ถ้าคุณทำบุญมาดี ตอน Build มันจะ ERROR นั้นโชคดีที่สุดแล้ว ดีกว่าไป ERROR ที่ลูกค้า แล้วปัญหานี้จะแก้ไขยังไง ? ตอนนั้นผมเสนอไปในแนวทางที่ 1 ดักตั้งแต่ Merge Request เลย แต่เจอประเด็น เรื่อง Resource ให้ Agent / ไม่อยากให้ Tools มาจับผิด เลยไปในแนวทาง พลังแห่งพวกฟ้องครับ แต่ความเป็นจริง Dev…

GitLab-CE: มาลองปรับ Merge Request Approval ให้มีประสิทธิภาพมากขึ้น

เกริ่นนำก่อนครับ Gitlab มี Feature Merge Request Approval โดย ส่วนที่ทำไมต้องทำ มันลั่นบ่อย / ไม่ได้ Review กันจริงจัง บางทีส่งมา หลายร้อยไฟล์ ก็มากดๆให้เป็นพิธี ระบบไม่บังคับก็ไม่กดรับทราบกัน พอเกิดปัญหาไม่มีหลักฐานการ Review อีก หรือ พอเป็นคนละหน่วย ไม่อยากคุยกันอะไรประมาณนี้ ลูกค้าด่าที ค่อยหาคนมาหยุม 5555 เลยเป็นที่มาของการมาหาวิธีทำ Merge Request Approval แบบ Require + กฏนิดหน่อย ภายใน GitLab-CE ครับ GitLab CE: Merge…

ลองใช้ GitLab REST API

ตอนนี้มีโจทย์ให้คิดครับ เพราะเท่าที่ย้ายมาใช้ Git มาน่าจะ 3 ปี และจะเจอปัญหานึงประจำเลย มี Branch เปิดลอยๆไว้ ไม่เอามา Merge เข้าเส้นหลัก และไม่ได้ Pull Code ให้ Update ล่าสุดด้วย แล้วมันเอาไปทำอะไร ถามแล้วไม่มีใครรับว่าเป็นเจ้าของอีก ได้เป็นโจทย์เล็กๆ สำหรับมาหาว่า Branch อันนี้ใครสร้างคนแรก เพราะที่ส่องจาก GitLab มันจะมี Event Push ขึ้นมา ดังรูป แต่ก่อนจะใช้งาน API เราต้องเตรียมตัวอะไรบ้างนะ Generate Access Token (API KEY)…

Git Command 101

ปกติผมจะไม่ค่อยใช้ Command เลย นอกจากเขียนพวก Script ต่างๆ จะไป Google / Chat GPT เอาครับ คราวนี้มาลองสรุป Git แบบ Command กันครับว่ามีอะไรบ้าง git init git config git add git rm git status git commit git reset git remote git push git clone git fetch /…