อย่างผมนำเอา SVN ไปใช้งานในโปรเจ็ค web app ตัวหนึ่ง ผมอยากทราบว่า เมื่อไร ผมถึงจะใช้ Branches และ Tags นี่คืออะไรครับใช้ในขั้นตอนใหน
เพราะตอนนี้เจอปัญหาคือ ไม่ว่าจะ แก้ไข code หนึ่งบรรทัด เลข version ก็ run ไปได้เรื่อยๆ คืออยากจะทำอย่างสากลเขาทำกันครับ ยังมือใหม่อยู่ครับผม
ขอบคุณครับผม
คนนี้เค้าเขียนดีนะครับ
tekkasit Mon, 19/10/2009 - 12:45
คนนี้เค้าเขียนดีนะครับ เอาไปละกัน จริงๆ ถ้าพอ Google ก็พอจะหาได้นะครับ ที่เป็นภาษาไทย
ขอบคุณที่โปะลิงค์ให้ครับพี่
m3rlinez Wed, 21/10/2009 - 01:17
In reply to คนนี้เค้าเขียนดีนะครับ by tekkasit
ขอบคุณที่โปะลิงค์ให้ครับพี่ :)
ขอบคุณมากครับสำหรับบทความดีๆ
music7up Wed, 21/10/2009 - 09:57
In reply to ขอบคุณที่โปะลิงค์ให้ครับพี่ by m3rlinez
ขอบคุณมากครับสำหรับบทความดีๆ
ผมอ่านแล้วเข้าใจพอสมควรเลยครับ เมื่อไรจะมี บทความของ Git บ้างครับผมรองอ่าน
เรื่องเลข version ที่เห็นใน
tekkasit Mon, 19/10/2009 - 12:49
เรื่องเลข version ที่เห็นใน SVN อย่าไปซีเรียส มันเป็นเหมือน internal sequential number ของ_ทั้ง_ SVN repository
ถ้าใน repository นี้มีหลายโครงการ คุณจะเห็นได้ว่า เลข version นั่น อาจจะกระโดดได้ไกลมาก เพราะว่าโครงการอื่นดันขยัน commit
ถ้าจะเอาเลข build แนะนำให้ทำพวก build script เพื่อดูแลค่า app.build เองจะเหมาะกว่านะครับ
บางคน commit
crucifier Mon, 19/10/2009 - 15:59
In reply to เรื่องเลข version ที่เห็นใน by tekkasit
บางคน commit ทุกครั้งที่กดเซฟครับ -*- มันยิ่งทำให้กระจัดกระจายเวลาต้องการเทียบย้อนหลัง เตือนก็ไม่ค่อยฟัง ทำนองว่าเลขยิ่งรันเยอะ = ยิ่งขยัน
จริงๆคอมมิทบ่อยๆทุกครั้งที่เซ
ABZee Mon, 19/10/2009 - 19:50
In reply to บางคน commit by crucifier
จริงๆคอมมิทบ่อยๆทุกครั้งที่เซฟก็ไม่เป็นอะไรนะครับ ขอให้เขียนคอมเมนท์กำกับทุกครั้งเพื่อที่จะได้ไล่อ่านได้สะดวกๆ
จะตั้งไว้ว่าถ้าไม่มีคอมเมนท์ก็ห้ามคอมมิทก็ได้
สำหรับผม จำนวน commit เป็นแค่
tekkasit Mon, 19/10/2009 - 20:48
In reply to บางคน commit by crucifier
สำหรับผม จำนวน commit เป็นแค่ measurement ตัวหนึ่ง แต่จะถือเอาจริงเอาจังไม่ได้ เอาเป็นว่า นับจำนวน test case ผ่าน จะดีกว่า :D
ผมถือคติ
kowito2 Wed, 21/10/2009 - 21:12
In reply to บางคน commit by crucifier
ผมถือคติ เซฟทุกครั้งที่ยกมือขึ้นจากคีย์บอร์ด และ commit ทุกครั้งที่จบหนึ่งฟังชั่น หรือ 15 นาที แล้วแต่ว่าอันใหนมาก่อน และ comment ทุกครั้งที่ commit จะได้รู้ว่าเกิดอะไรขึ้นบ้าง มันจะส่งผลดีกับทีมโดยรวม
ออกตัวก่อนนะครับผมก็ไม่เก่งเร
aez Mon, 19/10/2009 - 12:49
ออกตัวก่อนนะครับผมก็ไม่เก่งเรื่อง subversion เท่าไร ขอให้ท่านผู้รู้ช่วยเสริมด้วยนะครับ
ใน svn เราสร้าง project ไว้ใช่ไหมครับ
ก็อะไรประมาณนี้ครับ แนะนำให้หาหนังสือมาอ่านครับจะเข้าใจมากขึ้น เล่มที่ผมอ่านก็ Pragmatic Version Control Using Subversion โดย Mike Mason ครับ
ต้องถือนโยบายนี้ก่อนครับ
tekkasit Mon, 19/10/2009 - 17:32
In reply to ออกตัวก่อนนะครับผมก็ไม่เก่งเร by aez
ต้องถือนโยบายนี้ก่อนครับ จะไม่มีที่เก็บ source code อื่นใด นอกไปจาก working copy และ SVN
ไม่มีแอบไป zip/rar แอบไป .org แอบไป .bak
Trunk นี่สายหลัก
Branches นี่มีผมใช้สองแบบ Maintenance/Bug fix ประเภท พิมพ์โน่นตก คำนวณผิด อัพเดทพลาด กับ Feature เช่นเพิ่ม flow แบบใหม่ ทั้งสองแบบไม่ใช่ถาวร พอเสถียรค่อย merge กลับเข้าสายหลัก
เพื่อที่ให้การพัฒนาฟีเจอร์ใหม่ กับ แก้บั๊กสามารถทำคู่ขนานกันไปได้ โดยที่ไม่มีผลกระทบกับอีกสายหนึ่ง อันนี้อธิบายเป็นคำพูดลำบาก ต้องให้เห็นภาพ แต่เป็นความคิดที่ยอดมาก (จะไปลำบาก ก็ตอน merge กันนี่แหล่ะ)
ส่วน Tag นี่เหมือนทำ snapshot ไว้ครับ เพราะว่าแอพพลิเคชันแต่ละตัว จะประกอบด้วยหลายไฟล์ เวอร์ชันแต่ละตัวก็ไม่เท่ากัน บางตัวหนึ่ง บางตัวหกสิบ แต่เรามัดรวมว่านี่ สายนี้เรียกว่า 1.0
ประโยชน์ที่ผมใช้ คือไว้ตอน milestone ใหญ่ เช่น ไว้ตอนที่ส่งให้ UAT/SIT ผมจะ tags จาก branch ลงมาไว้เป็นแบบ UAT-1 หรือ 1.0.20091003-08 (ชอบแบบหลังมากกว่า เพราะจะได้ไม่รู้ว่า UAT มากี่รอบแล้วววว) เหมือนทำ snapshot ไว้ โดยที่ไม่ต้องมานั่งพะวงเก็บ source ไว้แยกต่างหาก เดียวงง ก็แค่ tag แล้ว checkout ออกมา build
อย่าลืมให้แอพพลิเคชัน ต้องแสดงค่า version กับ build มาด้วย อาจจะหน้า login หรือที่ footer สุดแท้แต่
เพราะว่าเวลาลูกค้าเอาไปทำที่ UAT แล้วมีปัญหา ถ้าเค้า capture จอภาพที่ ระบุ build number ได้ เราจะได้เอาชุดนั้น snapshot นั้นมา ง่ายๆ
+1
ABZee Mon, 19/10/2009 - 19:47
In reply to ต้องถือนโยบายนี้ก่อนครับ by tekkasit
+1
ขอบคุณมากๆครับ
music7up Wed, 21/10/2009 - 09:58
In reply to ต้องถือนโยบายนี้ก่อนครับ by tekkasit
ขอบคุณมากๆครับ
อย่าลืมอีกอัน stable
magicbank Mon, 19/10/2009 - 16:57
อย่าลืมอีกอัน stable