ใช้การควบคุมเวอร์ชันกับรุ่น ArcGIS ModelBuilder หรือไม่


16

การควบคุมเวอร์ชันเป็นเครื่องมือที่ขาดไม่ได้สำหรับการพัฒนาซอฟต์แวร์ซึ่งช่วยให้ย้อนกลับไปสู่ยุคสุดท้ายได้อย่างเชื่อถือได้และหมดจดเป็นครั้งสุดท้ายที่ X ทำงานได้อย่างถูกต้องหรือเพื่อดูว่ามีการเปลี่ยนแปลงระหว่างตอนนี้และตอนนี้ - มักใช้เมื่อพยายามคิดว่าทำไม X ทำงานไม่ถูกต้องอีกต่อไป

อย่างไรก็ตามเครื่องมือทั้งหมดที่ฉันรู้เกี่ยวกับการทำงานนี้เฉพาะกับไฟล์ข้อความธรรมดา กล่องเครื่องมือ (กล่องมาตรฐานไม่ใช่กล่องเครื่องมือหลามที่นำมาใช้ใน 10.1) และแบบจำลองของมันคือไบนารี ใครบ้างมีวิธีใช้การได้ที่จะนำเวอร์ชันไปให้พวกเขา?

หมายเหตุ: เวอร์ชันจะแตกต่างจากการสำรองข้อมูล มีจำนวนการใดวิธีการง่ายๆในการสร้างภาพรวมของไฟล์สำหรับการเฉพาะวันที่ / เวลา - การสำรองข้อมูล Windows, รุ่นก่อนหน้านี้ , xcopy /s d:\foobar\ x:\foobar_%date%, zip stuff_%date%.zip stuff\*และอื่น ๆ

การใช้เครื่องมือเช่นgit , fossil , mercurial , subversionหรือ...ไปยังไฟล์ไบนารีนั้นดีกว่าการใช้ xcopy หรือ zip ในขั้นตอนเดียวที่สามารถเพิ่มข้อความยืนยันได้"แบบจำลอง foobar% date%% ตอนนี้เขียนทับหน้าที่แล้ว ผลเฉพาะในกรณีที่บ๊าไม่มี"แต่ยังคงเป็นโรคโลหิตจางเมื่อเทียบกับสิ่งที่ชุดเดียวกันสามารถจะนำไปใช้กับไฟล์ข้อความ: เช่นแสดงให้ฉันว่าสิ่งที่เปลี่ยนแปลงระหว่างปีที่ผ่านมาและในวันนี้

ภาพหน้าจอ WinMerge

คำตอบ:


9

ซอฟต์แวร์ควบคุมเวอร์ชันหลักทุกรุ่นไม่ว่าจะเป็นรุ่นกลางส่วนกลางเช่น SVN หรือโซลูชั่นแบบกระจายเช่น Git, Mercurial, Bazaar เป็นต้นช่วยให้สามารถจัดเก็บไฟล์ไบนารี่ได้ พวกมันค่อนข้างมีประสิทธิภาพทั้งในด้านประสิทธิภาพและในแง่ของพื้นที่ว่าง

การตรวจสอบความแตกต่างระหว่างการแก้ไข / เวอร์ชันของไฟล์เป็นเรื่องที่แตกต่างกันแน่นอน มีไม่มากที่คุณสามารถทำได้เมื่อคุณต้องการเปรียบเทียบรุ่น ArcGIS ซึ่งเป็นไบนารี ฉันไม่รู้เครื่องมือต่าง ๆ สำหรับรุ่นฉันสงสัยว่าจะมีเพราะคนส่วนใหญ่ไม่ต้องการฟังก์ชั่นนี้


แต่คุณจะยังสามารถย้อนกลับและ / หรือดึงข้อมูลเวอร์ชันก่อนหน้าได้ใช่ไหม
Chad Cooper

1
ใช่ แต่ฉันคิดว่าคำถามนั้นมีมากขึ้นตามแนวการเห็นความแตกต่างที่แท้จริงระหว่างตัวแบบถ้าฉันเข้าใจอย่างถูกต้อง
Petr Krebs

ถูกตัอง. ฉันกำลังวางไฟล์ไบนารี. tbx ใน VC (โดยใช้ mercurial) แต่นั่นก็ไม่ได้แตกต่างจากการเรียกไฟล์เดียวกันจากการสำรองข้อมูลปกติ
matt wilkie

1
คุณลักษณะ gitช่วยให้คุณสามารถใช้โปรแกรมง่าย ๆ ในการสร้างไฟล์ไบนารีบางไฟล์ - มีโปรแกรมสำหรับ. docx และข้อมูลเมตาของภาพ exif โมเดล ArcGIS จะต้องใช้โปรแกรมที่กำหนดเองที่คล้ายกัน
James Conkling

ความคิดที่ดี @JamesConkling พนักงานของ Esri ต้องการอาสาสมัครหรือไม่
nmpeterson

7

ขณะนี้ฉันมีขั้นตอนการทำงานของArcCatalog: กล่องเปิด> เลือกรูปแบบ> แก้ไข> ไฟล์> ส่งออก> หลามสลับไปยังเครื่องมือ SCM > การเปลี่ยนแปลงรีเฟรช> กระทำการเปลี่ยนแปลง (ป้อนความคิดเห็น log)

มันยุ่งยากดังนั้นฉันไม่ได้ทำอะไรมากมายและเสียประโยชน์หลายอย่างของการกำหนดเวอร์ชัน


1
ยอมรับคำตอบตอนนี้เพราะมันคือสิ่งที่ฉันทำ ฉันจะเปลี่ยนเป็นดีขึ้นอย่างมีความสุขถ้ามันปรากฏขึ้น!
matt wilkie

ไม่มีปัญหาด้าน อย่างไรก็ตามคุณไม่สามารถชนะรางวัลของคุณเอง
ใต้ Radar

@ ด้านล่างฉันรู้ว่าหลังจากแก้ปัญหาไม่ได้รับรางวัล (และคำตอบที่ยอมรับก่อนที่ฉันจะเปิดเงินรางวัลอยู่แล้ว)
แมตต์ wilkie

6

ModelBuilder เก่าล้าและไม่ได้รับการอัปเดตที่สำคัญกับ ArcGIS Pro หากทวีตนี้เป็นข้อบ่งชี้ ฉันไม่เคยเป็นแฟนตัวยงของมัน ( แต่สลับยังคงใช้มันเมื่อฉันต้อง) ดังนั้นคุณอาจพิจารณาคำตอบนี้เป็นพลิ้วไหวของคำถามและข้อเสนอแนะที่จะมองเป็นทางเลือก

FMEเป็นทางเลือก ModelBuilder ที่ชัดเจนที่สุดเนื่องจากมี flowagram UI คล้ายกัน ข้อดีอย่างหนึ่งที่เกี่ยวข้องคือเอกสารของมันอยู่ในรูปแบบข้อความล้วนดังนั้นพวกเขาจึงสามารถแตกต่างกันได้ (แม้ว่าจะมี cruft ที่สร้างขึ้นโดยอัตโนมัติที่ไม่มีความหมายจำนวนมากซึ่งคุณต้องเรียนรู้ที่จะเพิกเฉย) มันเป็นซอฟต์แวร์เชิงพาณิชย์ดังนั้นราคาอาจไม่สูงพอสำหรับบางคน

คนอื่น ๆ ที่ฉันไม่ค่อยคุ้นเคยกับรวมถึงOrfeo Toolbox , Whitebox Geospatial Analysis Toolsและตัวสร้างกราฟิกของ QGIS (อิงSEXTANTE ) นี่คือสภาพแวดล้อมการสร้างแบบจำลองโอเพนซอร์สทั้งหมดที่มี GUI

การผลักดันครั้งใหญ่ที่ฉันได้สังเกตที่ GIS และการประชุมเปิดข้อมูลในช่วงไม่กี่ปีที่ผ่านมานั้นมีต่อแนวคิดของ "การวิจัยที่ทำซ้ำได้" ซึ่งก็คือข้อมูลและกระบวนการที่สามารถแบ่งปันและทำซ้ำโดยผู้อื่นได้อย่างง่ายดาย ซึ่งมักหมายถึงการใช้รูปแบบข้อมูลเปิดซอฟต์แวร์โอเพ่นซอร์สและที่เก็บข้อมูลที่ใช้ร่วมกัน Python และ R เป็นที่นิยมมากในเรื่องนี้

ฉันคิดว่าการนำเสนอของ Dharhas Pothina เกี่ยวกับ Python และ GISเมื่อต้นปีที่ผ่านมาทำให้เกิดข้อโต้แย้งที่ดีสำหรับเรื่องนี้ ฉันเห็นด้วยอย่างยิ่งทีเดียวว่าการพึ่งพา GUI มากเกินไปเป็นอันตรายต่อความสามารถในการทำซ้ำ ด้วยรหัสตราบใดที่คุณคุ้นเคยกับภาษาคุณสามารถสแกนได้อย่างรวดเร็วและเข้าใจว่าเกิดอะไรขึ้นในขณะที่ GUI ที่คุณต้องคลิกและเลื่อนไปมาในหน้าต่างที่แตกต่างกันมักจะซ้อนกันในส่วนลึก เพื่อรับค่าและการตั้งค่า

แน่นอนว่ามีการแลกเปลี่ยนที่นี่ แต่ในความคิดของฉันทุกคนที่ทำงานอย่างจริงจัง (การวิจัยทางวิทยาศาสตร์การกำหนดนโยบายและอื่น ๆ ) ควรใช้เครื่องมือที่อำนวยความสะดวกในการทำซ้ำ

ขออภัยที่ไม่ตอบคำถามของคุณโดยตรง (แต่ฉันไม่เชื่อว่ามีคำตอบง่าย ๆ )


3
ไม่สามารถตกลงเพิ่มเติมเกี่ยวกับแนวคิดของการวิจัยที่ทำซ้ำได้ สำหรับฉันมันเป็นเหตุผลที่น่าสนใจที่สุดว่าทำไมนักวิจัยควรใช้ OSS
djq

2
ฉันไม่สามารถตกลงเพิ่มเติมเกี่ยวกับการเชื่อมั่นใน GUI ได้มากนักซึ่งมักจะเป็นอันตรายต่อความสามารถในการทำซ้ำ ถูด้วยรหัสที่อยู่ใน"ตราบใดที่คุณมีความคุ้นเคยกับภาษา" ขนาดเล็กของประตูนั้นทำให้คนฉลาดและมีประสิทธิผลมากอยู่ข้างนอกในถิ่นทุรกันดาร แก่นแท้ของคำถามนี้คือการค้นหาวิธีที่จะขยายเกตนั้น มันน่าผิดหวังเพราะ Modeller เกือบมีทั้ง GUI และรหัส คุณพูดถูกมันเหี่ยวแห้งไปเถาวัลย์เพราะขาดความสนใจ น่าเศร้าที่เรามีคนที่เพิ่งค้นพบโมโจในระบบอัตโนมัติและการเขียนสคริปต์ผ่านการเข้าถึงของ Modeller
matt wilkie

4

การแนะนำกล่องเครื่องมือ Python ที่ ArcGIS 10.1 สำหรับเดสก์ท็อปทำให้คำสั่งอายุสี่ปีของคุณไม่ถูกต้องซึ่งทั้งหมด :

กล่องเครื่องมือและแบบจำลองของพวกเขาคือไบนารี

กล่องเครื่องมือมาตรฐานเป็นไบนารี แต่กล่องเครื่องมือ Python (* .pyt) เป็นไฟล์ข้อความ

ดังนั้นฉันคิดว่ากล่องเครื่องมือ Python ควรได้รับการพิจารณาหากการควบคุมเวอร์ชันของซอร์สโค้ดสำคัญกว่าข้อกำหนดสำหรับ GUI การสร้างโมเดล

คุณตระหนักถึงสิ่งนี้จากคำตอบของคุณในเพราะเหตุใดจึงเรียนรู้ / ใช้กล่องเครื่องมือ Python ผ่านเครื่องมือ Python Script แต่ฉันคิดว่าฉันควรรวมนี่เป็นคำตอบที่นี่เพื่อให้ตัวเลือกในการใช้กล่องเครื่องมือ Python (เพื่อให้เข้าถึงการควบคุมเวอร์ชันได้ง่าย) แทนที่จะใช้กล่องเครื่องมือมาตรฐานโดยผู้อ่านในอนาคตของคำถาม & คำตอบนี้จะไม่ถูกมองข้าม


ขอบคุณสำหรับการแยกความแตกต่างที่สำคัญนี้ออก เป็นเรื่องน่าเสียดายที่คำเดียวกันนี้ใช้สำหรับสิ่งที่มีอยู่ในสิ่งมีชีวิตที่แตกต่างกันไป ฉันจะสัมผัสถ้อยคำตามนั้น
matt wilkie

1

ในหลาย ๆ ทางฉันดีใจจริง ๆ ที่ESRI ไม่ยกเครื่อง Geoprocessing Framework และ Modelbuilder ทั้งหมดด้วยการเปลี่ยนมาใช้ ArcGIS Pro มีองค์กร (การวิจัย) จำนวนมากที่ลงทุนอย่างมากในการสร้างแบบจำลองขนาดยักษ์ที่ไม่ต้องสงสัยเลยว่าต้องมีการยกเครื่องใหม่อย่างสมบูรณ์หาก ESRI มีความเข้ากันไม่ได้

เช่นเดียวกับการเปลี่ยนไปใช้ Python / การประมวลผลทางภูมิศาสตร์จากพื้นหลังของมาโคร Arc / Info AML สิ่งนี้ไม่ต้องสงสัยเลยว่าจะส่งผลกระทบอย่างมากต่อผู้คนจำนวนมาก แม้แต่ประมาณ 5 - 8 ปีหลังจากการเปิดตัว ArcGIS ครั้งแรกยังมีนักวิจัยและหน่วยงานภาครัฐบางครั้งอ้างถึงโมเดล AML บนฟอรัมเช่นนี้ซึ่งพวกเขายังไม่สามารถแปลงเป็น Python ได้เนื่องจากเวลาเงินหรือ ข้อ จำกัด อื่น ๆ นี่แสดงให้เห็นถึงผลกระทบที่อาจเกิดขึ้นจากการเปลี่ยนแปลงดังกล่าวซึ่งไม่น่าสงสัยเลยที่จะมีขนาดใหญ่

ฉันยอมรับ ModelBuilder สามารถ "clunky" ในบางครั้งหากคุณไม่รู้จักดี แต่เนื่องจากฉันเริ่มเรียนรู้ Python อย่างแท้จริงและเริ่มเข้าใจการเขียนโปรแกรมการตรวจสอบเครื่องมือ ( http://resources.arcgis.com/en/help/main) /10.2/index.html#//00150000000v000000 ) ส่วนใหญ่ของ "ความเจ็บปวด" ได้รับการรีโหลดแล้ว ตอนนี้ฉันเข้าใจวิธีที่ดีกว่าบางส่วนของข้อความแสดงข้อผิดพลาด "cryptic" ข้อความผิดพลาดสามารถทิ้งและทำให้คุณสูญเสียซึ่งเป็นส่วนหนึ่งของแบบจำลองที่เสียและตอนนี้ฉันสามารถแก้ไขได้อย่างมีประสิทธิภาพมากขึ้นหรือป้องกันโดยการเขียนรหัสตรวจสอบเครื่องมือที่เหมาะสม . สิ่งนี้มีค่ามากโดยเฉพาะอย่างยิ่งเมื่อ "รวม" กล่องเครื่องมือ / รุ่นที่ไม่ใช่ Python กับสคริปต์ Python

หนึ่งความหวังแม้ว่าฉันจะยังมีและนั่นจะทำให้ชีวิตกับ ModelBuilder มากง่ายขึ้นคือถ้าการประมาณค่าเครื่องมืออัตโนมัติไฮไลต์เครื่องมือจริงและเปิดโมเดลโดยอัตโนมัติซึ่งทำให้คำเตือนหรือข้อผิดพลาดที่เกี่ยวข้องกับตัวแปร หรืออย่างน้อยที่สุดรายการข้อผิดพลาดและคำเตือนที่ปรากฏขึ้นเมื่อคุณคลิก "ตกลง" ในแบบจำลองที่ไม่ถูกต้องควรประกอบด้วยชื่อเครื่องมือที่ถูกต้องและชื่อของแบบจำลองที่เครื่องมืออยู่ในตำแหน่งที่ไม่ถูกต้อง หากคุณมีโมเดลหลายแบบซ้อนกันการค้นหาเครื่องมือที่ทำให้เกิดข้อผิดพลาดในการตรวจสอบความถูกต้องอาจทำให้เกิดความน่าเบื่อในบางครั้งด้วยรายการข้อผิดพลาดที่ไม่รวมเครื่องมือหรือชื่อรุ่น (ย่อย) แต่เป็นชื่อตัวแปรที่ไม่ถูกต้อง ที่จริงแล้วฉันสูญเสียเพราะเหตุใด ESRI จึงไม่รวมชื่อเครื่องมือและรุ่นในรายชื่อดูเหมือนจะง่ายในการแก้ไขปัญหานี้

นอกจากนี้ยังมีฟังก์ชั่น "ค้นหา" เพื่อค้นหาเครื่องมือตามชื่อตามที่กำหนดไว้ในรุ่นต่างๆ


มาร์โกขอบคุณสำหรับมุมมองและมุมมองของคุณ! มันอยู่นอกหัวข้อที่นี่โดยมีเป้าหมายคือ (พยายาม) ค้นหาการควบคุมเวอร์ชันที่ใช้งานได้สำหรับ Model Builder ลองย้ายไปแชท: chat.stackexchange.com/rooms/939/gis
matt wilkie
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.