ฉันจะตรวจสอบความสามารถในการทำซ้ำของรหัส Julia และการอ้างอิงที่ไม่ระบุตัวตนได้อย่างไร

Aug 19 2020

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

ขั้นตอนที่ฉันได้ดำเนินการไปแล้ว:

  1. สร้างโค้ดในโฟลเดอร์ของตัวเอง
  2. ทำให้โฟลเดอร์นั้นเป็นสภาพแวดล้อมของ Julia (โดยactivate .ในโหมดแพ็คเกจของ REPL)
  3. addแก้ไขแพ็คเกจที่ฉันใช้

สิ่งนี้ล็อกในเวอร์ชันของการอ้างอิงหรือไม่ หรือฉันต้องเพิ่ม[compat]รายการลงในProject.tomlไฟล์ด้วยตนเอง? หาก[compat]จำเป็นต้องใช้entreis มีวิธีรวมรายการนั้นโดยอัตโนมัติเมื่อเข้าaddสู่แพ็กเกจหรือไม่?

มีแนวทางโดยรวมในการรับรองความสามารถในการทำซ้ำหรือไม่?

คำตอบ

5 KristofferCarlsson Aug 19 2020 at 18:42

สิ่งนี้ล็อกในเวอร์ชันของการอ้างอิงหรือไม่

หากคุณยอมรับProject.tomlและManifest.tomlมีใครบางคนสามารถโคลน repo ได้ให้เปิดใช้งานโปรเจ็กต์นั้นและimport Pkg; Pkg.instantiate()ดาวน์โหลดเวอร์ชันเดียวกับที่บันทึกไว้ในไฟล์ Manifest

3 fredrikekre Aug 19 2020 at 18:42

สิ่งนี้ล็อกในเวอร์ชันของการอ้างอิงหรือไม่

ใช่ในแง่ที่ว่ามีการบันทึกเวอร์ชันที่แน่นอนไว้ในManifest.tomlไฟล์ตราบใดที่ไฟล์นั้นไม่ได้ถูกแก้ไขไฟล์จะถูกล็อก

หรือฉันต้องเพิ่ม[compat]รายการลงในProject.tomlไฟล์ด้วยตนเอง?

คุณไม่จำเป็นต้องทำเช่นนี้ นี้เท่านั้นที่สำคัญเมื่อมีคนทำการดำเนินการแพคเกจที่จะเรียกจำแนกตัวอย่างหรือpkg> add ... pkg> upหากรหัสของคุณอาศัยเวอร์ชันเฉพาะของแพ็กเกจคุณสามารถเพิ่มสิ่งนี้ลงใน[compat]ส่วนนี้ได้ตลอดเวลา ตัวอย่างเช่นหากคุณใช้คุณลักษณะที่ต้องใช้แพ็กเกจXเวอร์ชัน 1.3.0 คุณสามารถเพิ่มได้

[compat]
X = "1.3"

นี้จะให้แน่ใจว่าแม้ว่าบางคนจะเรียกจำแนกแพคเกจที่คุณจะได้อย่างน้อยจะได้รับรุ่น 1.3 Xของแพคเกจ