Apa struktur organisasi terbaik untuk berbagi kode python ArcGIS dan alat geoprocessing? Atau bahkan, apakah berbagi kode dan alat berbagi pertanyaan terpisah?
Esri memiliki Metode untuk mendistribusikan struktur alat , diterbitkan untuk Arcgis 9.3 dan 10.0:
Namun di tempat lain orang mengatakan hal-hal seperti yang Also do avoid distributing your code the way its done in Arc Scripts or Code Galleries
mendukung Distutils python asli . Esri tampaknya tidak memiliki artikel alat pendistribusi yang sesuai untuk 10.1 ( ref ), memberikan bobot pada argumen balasan.
Apa kata GIS.se?
Pembaruan: meskipun mungkin sudah terlambat, tetapi inti pertanyaan ini adalah tentang praktik terbaik untuk struktur file dan folder sebelum alat yang digunakan untuk berbagi (arcgis online, google drive, dropbox, github, bitbucket, dll.) bermain.
Update2: dan tidak akan ada yang berbicara untuk pendekatan distutils yang tampaknya yatim piatu?
sumber
Jawaban:
Pada 10.1 dan 10.2 Folder Toolshare yang Anda ilustrasikan tampaknya tidak lagi didokumentasikan.
Saya menduga ini karena rekomendasi saat ini adalah untuk menggunakan Paket Geoprocessing daripada Folder Toolshare:
Dalam hal praktik terbaik organisasi, cara saya menyimpan kotak alat dan kode Python apa pun yang mereka gunakan adalah dalam struktur folder yang sama yang masih dapat digunakan untuk membantu mendistribusikannya yaitu struktur Folder Toolshare.
sumber
Saya telah menggunakan Google Drive untuk berbagi skrip Python dan alat skrip antara kolega. Semua skrip disimpan dalam folder bersama dengan kotak alat ArcGIS, yang berisi semua alat skrip yang ditautkan (dan model). Ada beberapa manfaat dari pendekatan ini: 1) Semua orang bekerja dengan versi skrip yang sama, 2) Anda dapat menetapkan hak istimewa menulis atau hanya-baca, dan 3) Kolaborasi, misalnya, di berbagai tempat kerja, universitas, dan negara yang berbeda jauh lebih mudah dengan Google Berkendara daripada mencoba mengatur akses pengguna pada server yang mungkin atau mungkin tidak Anda kelola.
sumber
Esri's ArcGIS Pro doc Memperluas proses geoprosesing melalui modul Python menunjukkan bagaimana membuat struktur proyek yang ramah terhadap Distutils, termasuk membangun installer biner Windows dan Linux.
(Catatan: ini untuk berbagi skrip dan alat, ini bukan model yang baik untuk berbagi skrip dan peta dan data sebagai satu paket.)
Tata letak proyek sumber:
Menjadi ini pada sistem pengguna akhir, di bawah
C:\Path\to\ArcGIS\Desktop\python
Mereka tidak menyebutkan pip tetapi dari mempelajari contoh-contoh saya tidak melihat mengapa itu tidak berhasil. Contoh: untuk pengeditan kolaboratif dan / atau perangkat yang sering berubah, instal menggunakan
pip install --editable X:\path\to\src
,pip install --editable http://github.com/project/path/to/master
sumber