วิธีใช้งาน git large file support by

30
Aug
0

เรียกย่อๆ ว่า git lfs โดยเครื่องตัวอย่างเป็น ubuntu 16.04 LTS ซึ่งมีติดตั้งมาให้ในตัวอยู่แล้ว แต่อาจจะยังไม่ install เริ่มด้วยเรียกคำสั่ง
git lfs installเพื่อ install
การใช้งาน ณ ตอนนี้สามารถใช้ผ่าน https เท่านั้น โดยต้องกรอก username และ password เข้าไปเอง หรือจะใช้ config เพื่อช่วยให้ง่ายขึ้น
ใช้คำสั่งgit lfs track "*.xxx" โดย xxx หมายถึงนามสกุลที่ใช้ระบบ lfs ในการจัดเก็บ
หลังจากเพิ่ม track แล้ว ทำการ add และ commit โดย push ด้วยคำสั่งgit push origin master เพื่อ commit config lfs ขึ้นไปด้วย

กรณีที่ไม่มี git lfs ติดมาให้ สามารถเลือกดูวิธีการเพิ่ม source ได้ที่linkนี้

วิธีสร้างการเชื่อมต่อเข้าสู่ VirtualBox by

30
Jul
0

โดยปกติเมื่อติดตั้งและสร้าง VM แบบปกติผ่าน wizard แล้ว การเชื่อมต่อของเครือง VM ที่ได้ จะวิ่งเข้าสู่ internat โดยตรง โดยใช้ NAT เป็นหลัก
แต่เพื่อความสะดวกในการใช้งานเพื่อ Test โปรแกรมต่างๆ แล้ว เราอาจจะต้องการเส้นทางการเชื่อมต่อแบบ host to guest เพิ่มเข้ามา

  1. สิ่งที่ต้องทำอย่างแรกคือ Download pack เสริมของ virtualbox ในหน้านี้
    โหลดที่หัวข้อ Expansion Pack และติดตั้งให้เรียบร้อย
  2. เปิด VirtualBox ขึ้นมา แล้วไปที่ Preference => Network เพิ่ม Adapter แบบ Host only เข้าไป
  3. ที่ VM ตัวที่จะใช้งานให้เพิ่ม Adapter แบบ Host to guest เข้าไป
  4. สำหรับ ubuntu ที่สร้าง Network ขึ้นมาที่หลัง ให้ใช้คำสั่ง ip addr เพื่อหา NIC ที่เพิ่มเข้ามาให้แล้วไปตั้งค่าใน Networking อีกที
  5. เพื่อความสะดวกก็ใช้แบบ dhcp ได้เลยครับ ที่ vm ubuntu พิมพ์ ifconfig เพื่อดู IP แล้วก็เชื่อมต่อเข้าไปใช้งานได้เลย

ป.ล. ภาพและรายละเอียดเพิ่มเติม ตามมาทีหลังนะครับ ;)

วิธีสร้างบัญชีไฟล์โดยเรียงตามวันที่ by

30
Jun
0

วิธีนี้จะเป็นการสร้างประยุกต์ใช้ function ภายใน file helper ของ codeigniter ซึ่งรุ่นใหม่ๆ ผมไม่แน่ใจว่ามีวิธีสำเร็จรูปไว้แล้วหรือยัง
ที่แน่ๆ รุ่นที่กำลังใช้งานอยู่มันยังไม่มีรูปแบบสำเร็จรูป เลยต้องสร้าง function สำหรับใช้งานเอง เนื่องจาก function เตรียมไว้ใช้กับการเรียงไฟล์ที่อัพโหลดขึ้นมาบน server เรื่องเวลาที่ซ้ำกันจริงตัดออกไปนะครับ
function file_list_by_date(&$a_ret, $path, $reverse = TRUE) {
$buffer = array();
foreach (get_filenames($path) as $each) {
$buffer[get_file_info("{$path}{$each}", 'date')['date']] = $each;
}
$a_key = array_keys($buffer);
if ($reverse) {
rsort($a_key);
} else {
sort($a_key);
}
foreach ($a_key as $each) {
$a_ret[] = $buffer[$each];
}
}

อธิบายทีละบรรทัดได้ดังนี้

  1. บรรทัดแรกประกาศตัวแปล array ไว้รอรับ
  2. ใช้ foreach เพื่อวนรายชื่อไฟล์ใส่ตัวแปร
  3. นำวันที่ ในที่นี้จะเป็น timestamp มาเป็น key ของ array
  4. ใช้ function array_keys เพื่อนำ key ทั้งหมดมาใส่ไว้ในตัวแปร
  5. เลือกการ sort โดย sort ปกติ จะน้อยไปหามาก ส่วน rsort จะเป็นมากไปหาน้อย
  6. ถ้าสังเกตจากการประกาศ function $a_ret เราส่งเข้ามาเป็น pointer สำหรับ push ข้อมูลเข้าไปต่อท้ายได้เลย
  7. ทำการ push ข้อมูลตามลำดับด้วย key ที่ผ่านการจัดเรียงมาแล้ว

วิธีสร้างคำสั่งสำหรับโยกย้ายข้อมูลเฉพาะบางส่วน by

30
May
0

หลังจากที่เคยนำเสนอวิธีส่งออกข้อมูลทั้งตารางไปแล้ว คราวนี้จะเป็นวิธีส่งออกเฉพาะ record โดยให้คำสั่งสร้าง SQL string ให้เราแทน
ซึ่งคำสั่งเหล่านี้มีอยู่ใน Codeigniter อยู่แล้ว โดยอยู่ภายใต้หมวดของ database คือ คำสั่ง insert_string และคำสั่ง update_string

insert_string
เป็นการสร้างข้อมูลขึ้นมาใหม่ โดย parameter ตัวแรก จะเป็นชื่อของตารางที่ต้องการสร้างข้อมูล
parameter ตัวที่สอง เป็น array โดย key เป็น ชื่อ field ภายในตาราง ในคำสั่งนี้จะจัดการเรื่องอักขระพิเศษให้แล้วด้วย
ตัวอย่างคือ $this->db->insert_string(‘data_var’,['id'=>1,'test_count'=>1]);

update_string
เป็นการปรับปรุงข้อมูลเดิม โดย parameter ตัวแรก จะเป็นชื่อของตารางเช่นกัน
parameter ตัวที่สอง จะเป็น array ของชุดข้อมูลที่ต้องการปรับปรุง โดยใช้ key แทนชื่อ field เช่นกัน
parameter ตัวที่สาม จะเป็น array ของเงื่อนไขสำหรับการปรับปรุง หรือ where นั้นเอง
ตัวอย่างคือ $this->db->update_string(‘data_var’,['test_count'=>2],['id'=>1])

การจำลองข้อมูลเพื่อพํฒนาโปรแกรมทางฝั่งผู้เล่น by

30
Apr
0

ตอนเกมยังไม่ออกให้บริการการออกแบบโครงสร้างต่างๆ ควรเริ่มมาจากฝั่ง Server ออกแบบข้อมูลเพื่อให้ทาง Client ได้ใช้งาน
แต่เมื่อเกมออกให้ไปแล้ว การอัพเดทต่างๆ ของฝั่ง Client ต้องใช้เวลากว่าจะไปถึงมือของผู้เล่น อะไรที่แก้ไขจากทาง Serverได้ก็ต้องทำไปก่อน
ผิดถูกอย่างไร ไม่ต้องใส่ใจ แก้ได้แก้ไปก่อน โดยทั่วไปถ้าบุคคลากรเพียงพอ ก็จะมีการแบ่ง System Analyst, ฝั่ง Client, ฝั่ง Server อย่างชัดเจน
ต่างคนต่างรู้หน้าที่ รับข้อมูลจาก SA แล้วจัดการเขียนฝั่งของตัวเอง แต่หากเลือกไม่ได้ สามคนที่ว่าดันมารวมอยู่คนๆ เดียว
จำเป็นต้องพัฒนาออกมาให้เร็วที่สุด ก็จำเป็นต้องเริ่มจากทาง Client ก่อน ตรวจสอบเอกสารออกแบบ UI วางโครงสร้าง หา Requirement
จากนั้นทำการจำลองข้อมูลขึ้นมาทางฝั่ง Client เลย การออกแบบข้อมูลให้ครอบจักรวาลนั้นดีครับ แต่มันต้องใช้เวลามาก
ในเวลาที่จำกัด มองสิ่งที่อยู่ตรงหน้าแล้วจัดการไปก่อน เมื่อคุณทำสิ่งเดียวกันสองสามครั้งถึงจะเริ่มมองเห็นสิ่งที่สามารถใช้ร่วมกันได้
ขณะเริ่มสร้างที่ต้องลองผิดลองถูก สิ่งที่อยู่ใกล้กับตาของเรามากที่สุดปรับแก้ได้ไวที่สุดก็คือฝั่ง Client เมื่อได้ข้อมูลที่ชัดเจนแน่นอนแล้วจึงสามารถ
นำไปเริ่มสร้างระบบจากทางฝั่ง Server ได้ การ Mock data ก็เลยเหมือนเป็นการออกแบบเพื่อฝั่ง Server ไปในตัว

 เราชนะรอบ 4 | ยืมเงิน 3000 ด่วน | แอพกู้เงิน | แอพเงินด่วน | สินเชื่อออนไลน์อนุมัติทันที | Site Map | กู้เงินก้อน | กระเป๋าตัง | thisshop และ ยืมเงินฉุกเฉิน 5000 ด่วน