ArcGIS Python 코드 공유를위한 파일 구성


13

ArcGIS Python 코드 및 지오 프로세싱 도구를 공유하기위한 최상의 조직 구조는 무엇입니까? 또는 코드 공유 도구와 공유 도구가 별도의 질문입니까?

Esri에는 Arcgis 9.3 및 10.0 용으로 게시 된 도구 구조 배포 방법이 있습니다 .

배포 도구 폴더 구조 예

그러나 다른 곳에서는 사람들이 Also do avoid distributing your code the way its done in Arc Scripts or Code Galleries네이티브 파이썬 Distutils 와 같은 것을 말하고 있습니다. Esri는 10.1 ( ref )에 해당하는 배포 도구 기사를 가지고 있지 않아 반대 주장에 약간의 가중치를 부여합니다.

GIS.se는 무엇입니까?

업데이트 : 아마도 너무 늦었지만이 질문의 핵심은 공유 도구 (arcgis online, google drive, dropbox, github, bitbucket 등)가 등장하기 전에 파일 및 폴더 구조에 대한 모범 사례에 관한 것입니다. 플레이.

업데이트 2 : 아무도 고아가 아닌 distutils 접근법에 대해 아무도 말하지 않습니까?


이를 위해 실행 가능한 솔루션을 생각해 보셨습니까?
traggatmot

@traggatmot 아니에요. 오늘 저는 Esri의 Github 사이트 에서 가장 많은 별 및 / 또는 가장 활발한 기여 내역을 가진 python-with-toolboxes-project 프로젝트를 조사 할 것입니다 (이 Q는 공유 및 재사용에 관한
것이므로

답변:


10

10.1 및 10.2에서는 사용자가 설명한 도구 공유 폴더가 더 이상 문서화되지 않은 것 같습니다.

현재 권장 사항은 Toolshare Folders 대신 Geoprocessing Packages 를 사용하는 것이기 때문입니다 .

지오 프로세싱 패키지는 결과 창에서 하나 이상의 결과로 생성됩니다. 결과를 작성하는 데 사용 된 모든 데이터 및 도구가 패키지에 포함됩니다. 텍스트 문서, 슬라이드 쇼 및 압축 ZIP 파일과 같은 파일을 패키지에 추가 할 수 있습니다. 동료가 패키지의 포장을 풀고 즉시 내용물 사용을 시작합니다.

조직의 모범 사례 측면에서 툴박스와 툴박스를 사용하는 방법은 툴 셰어 폴더 구조와 같은 툴박스를 배포하는 데 여전히 사용할 수있는 동일한 폴더 구조에 있습니다.


... 지리 처리 패키지 파일의 압축을 수동으로 풀고 내부 파일을 검사하여 "조직 구조 란?"에 대한 답변을 찾을 수 있습니다.
matt wilkie 22시 07 분

나는 * .zip으로 이름을 바꾸고 * .gpk를 압축 해제하려고 시도하지 않았지만 내 이해는 당신이 그렇게 할 수 있다는 것입니다. 나는 그것이 도구 공유 폴더처럼 끔찍하게 보일 것이라고 생각합니다.
PolyGeo

5

Google 드라이브 를 사용하여 동료간에 Python 스크립트 및 스크립트 도구를 공유하고 있습니다. 모든 스크립트는 링크 된 모든 스크립트 도구 (및 모델)가 포함 된 ArcGIS 도구 상자와 함께 공유 폴더에 저장됩니다. 이 방법에는 몇 가지 이점이 있습니다. 1) 모든 사람이 동일한 스크립트 버전을 사용합니다. 2) 쓰기 또는 읽기 전용 권한을 설정할 수 있습니다. 3) 예를 들어 다른 직장, 대학 및 국가에서 공동 작업이 훨씬 쉬워집니다. 관리하거나 관리하지 않을 수있는 서버에서 사용자 액세스를 설정하려는 것보다 운전하십시오.



따라서 모든 스크립트 및 도구 상자를 동일한 폴더 수준으로 저장하십시오. 맞습니까?
RyanKDalton

@RyanDalton 간단하게하기 위해, 나는 보통 툴박스와 같은 수준에서 폴더를 깊이 저장합니다. 그러나 Gdrive는 복잡한 파일 구조도 지원합니다.
Aaron

2
이 워크 플로가 매력적이라면 누구나 버전 제어 소프트웨어 Git 과 인기있는 리포지토리 공유 웹 사이트 인 GitHub를 살펴보십시오 . 스크립트에 대한 모든 변경 사항 (날짜 및 작성자 포함)을 추적하고, 프로덕션 버전을 유지하면서 여러 기능을 관리하고, 여러 기능을 관리 할 수있는 기능을 통해 마스터 스크립트, 정의 된 권한 및 광범위한 액세스 기능을 제공합니다. 같은 파일을 동시에 편집하는 등의 작업은 사용하기가 복잡하지만 매우 유용합니다.
매트 파커

Google 드라이브, Dropbox, Git + Github, Mercurial + Bitbucket친구 는 모두 파일과 코드를 공유하기에 좋은 경로이지만이 질문의 핵심은 아닙니다. 공유 도구가 사용되기 전에 파일 및 폴더 구조에 대한 모범 사례를 따릅니다.
matt wilkie 21시 59 분

1

Esri의 ArcGIS Pro doc Python 모듈을 통해 지오 프로세싱 은 Windows 및 Linux 바이너리 설치 프로그램 빌드를 포함하여 Distutils에 적합한 프로젝트를 구성하는 방법을 보여줍니다.

(참고 : 이것은 스크립트와 도구를 공유하기위한 것이며 스크립트와 맵 및 데이터를 단일 패키지로 공유하기에 적합한 모델은 아닙니다.)

소스 프로젝트 레이아웃 :

Src 트리

최종 사용자의 시스템에서 C:\Path\to\ArcGIS\Desktop\python

대상 폴더 트리

그들은 핍에 대해서는 언급하지 않지만 예제를 연구하여 왜 작동하지 않는지 알 수 없습니다. 예 : 공동 편집 및 / 또는 자주 변경되는 툴셋의 경우 pip install --editable X:\path\to\src,pip install --editable http://github.com/project/path/to/master

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.