거북이 svn을 통해 플러그인을 저장소로 업데이트하는 올바른 방법은 무엇입니까?


18

내 플러그인이 몇 년 동안 저장소에 있고 30 만회 이상 다운로드되었지만 거북이 svn을 통해 플러그인을 업데이트하는 데 사용되는 절차에 대해 약간의 단서가 있다고 말하고 당황합니다!

여기에 svn에 대한 많은 질문이 있지만 그들은 나를 더 혼란스럽게했습니다 : -z

어떻게 든 지금까지 관리했지만 트렁크를 커밋하고 태그 디렉토리를 만드는 것과 관련하여 플러그인을 새 버전으로 업데이트하는 올바른 절차를 알아야합니다.

이것이 내가 지금까지 한 일입니다.

  1. 내가 만족할 때까지 플러그인 업데이트를 로컬에 코딩
  2. 로컬 플러그인 폴더의 모든 파일을 / trunk /에 복사하십시오 (플러그인 및 readme 파일의 버전 번호가 업데이트되었습니다)
  3. 트렁크 디렉토리를 커밋
  4. 트렁크 디렉토리를 마우스 오른쪽 단추로 클릭하고 브랜치 / 태그 생성을 선택하고 이름이 버전 번호 인 / tags /의 폴더로 복사하도록 설정하십시오.

이것이 정확하고 올바른 순서입니까? 그렇지 않은 경우 올바른 방법은 무엇입니까?

또한 버전 번호에 대해서는 ...

어떤 이유로 든, 나는 마지막 업데이트에서 버전 2.8.1에서 2.81.2로 갔다. 이것은 다음 버전 번호를 다음으로 변경하면 버전 2.81.2를 가진 사람들의 대시 보드에서 사용 가능한 업데이트로 표시되지 않음을 의미합니다 2.9?

워드 프레스는 최신 버전과 버전을 업데이트해야 하는지를 어떻게 결정합니까? version_compare합니까? 적절한 PHP 버전 형식에서만 작동합니까? 예. 2.9.2는 2.81.2보다 낮은 버전으로 간주됩니까? (내가 이해하기 때문에 version_compare는 왼쪽에서 시작하여 각 숫자에 대해 더 높거나 낮게 비교하므로 9는 81보다 작은 것으로 간주됩니다)

다른 질문,

플러그인의 작동에 실제로 영향을 미치지 않는 코드에서 어리석은 실수, 오타 또는 추가 이미지를 발견하면. 플러그인의 새로운 다운로드에 변경 사항이 포함되도록하기 위해 무엇을 편집하고 커밋합니까?

트렁크와 태그 폴더를 편집하고 둘 다 커밋해야합니까?


2
아무 이유가 당황, 나는 또한 약 한달 전에 문제를했고 실제로 I보다 더 많이왔다 :) @EAMann이 스레드에 정말 잘, 포함 스크린 샷 전체 과정을 설명 : wordpress.stackexchange.com/questions/를 16951 /…

답변:


29

내 플러그인이 몇 년 동안 저장소에 있고 30 만회 이상 다운로드되었지만 거북이 svn을 통해 플러그인을 업데이트하는 데 사용되는 절차에 대해 약간의 단서가 있다고 말하고 당황합니다!

하지마 SVN은 많은 사람들에게 까다로울 수 있습니다 ... 따라서 단계별로 살펴 보겠습니다 ...

이것이 내가 지금까지 한 일입니다.

  1. 내가 만족할 때까지 플러그인 업데이트를 로컬에 코딩
  2. 로컬 플러그인 폴더의 모든 파일을 / trunk /에 복사하십시오 (플러그인 및 readme 파일의 버전 번호가 업데이트되었습니다)
  3. 트렁크 디렉토리를 커밋
  4. 트렁크 디렉토리를 마우스 오른쪽 단추로 클릭하고 브랜치 / 태그 생성을 선택하고 이름이 버전 번호 인 / tags /의 폴더로 복사하도록 설정하십시오.

이것이 정확하고 올바른 순서입니까? 그렇지 않은 경우 올바른 방법은 무엇입니까?

거의 ...

따라야 할 단계 :

  1. 만족할 때까지 플러그인 업데이트를 로컬로 코딩
  2. readme.txt새 버전 번호와 일치하도록 파일 의 "안정적인"태그 를 늘리십시오
  3. 로컬 업데이트를 /trunk로컬 플러그인 폴더 의 디렉토리에 복사하십시오.
  4. 전체 플러그인 을 커미트 하여 변경 사항을 /trunk저장소에 저장하십시오.
  5. 마우스 오른쪽 단추를 클릭 /trunk하고 새 태그를 작성 하십시오 (2 단계) /tags/X.X.X의 "stable"태그에서 xxx가 동일한 버전 인 곳에 복사 하십시오.readme.txt
  6. 전체 플러그인 을 커밋 하여 태그 저장

어떤 이유로 든, 나는 마지막 업데이트에서 버전 2.8.1에서 2.81.2로 갔다. 이것은 다음 버전 번호를 다음으로 변경하면 버전 2.81.2를 가진 사람들의 대시 보드에서 사용 가능한 업데이트로 표시되지 않음을 의미합니다 2.9?

빙고. 버전 2.81.2를 업데이트로 커밋하고 사람들이 실제로 해당 업데이트를 다운로드 한 경우 릴리스 할 때 2.9가 표시되지 않습니다.

워드 프레스는 최신 버전과 버전을 업데이트해야 하는지를 어떻게 결정합니까? version_compare합니까? 적절한 PHP 버전 형식에서만 작동합니까? 예. 2.9.2는 2.81.2보다 낮은 버전으로 간주됩니까? (내가 이해하기 때문에 version_compare는 왼쪽에서 시작하여 각 숫자에 대해 더 높거나 낮게 비교하므로 9는 81보다 작은 것으로 간주됩니다)

바로 그거죠. 표준 PHP 버전 비교에서는 2.81.2 버전 이 81> 9이므로 2.9보다 최신 버전으로 표시 됩니다.

다음에 버전 3.0을 릴리스하는 것이 좋습니다 . 나중에 이런 종류의 오타를 방지하기 위해 버전 을 지정할 때 매우주의 하십시오.

플러그인의 작동에 실제로 영향을 미치지 않는 코드에서 어리석은 실수, 오타 또는 추가 이미지를 발견하면. 플러그인의 새로운 다운로드에 변경 사항이 포함되도록하기 위해 무엇을 편집하고 커밋합니까?

트렁크와 태그 폴더를 편집하고 둘 다 커밋해야합니까?

사소한 변경이 필요한 경우 유지 보수 릴리스를 고려하십시오 . 나는 일반적으로 이런 종류의 버전 관리 스키마를 따릅니다.

2      .      1       .       3       .       5
major         minor           maint           build

빌드 번호는 나는 오직 나 베타 릴리스 ... 당신은 거의 것 내부적으로 사용 결코 내가 수동으로 당신에게 파일을 이메일하지 않는 한 (내가 워드 프레스 업데이트를 중단하지 않습니다 시험판 버전을 배포 할 수있는 방법) 나에서 빌드 번호를 볼 수 없습니다 .

라이브 버전에서 버그가 발견되면 빠른 패치를 만들고 유지 관리 버전을 릴리스합니다. 플러그인 2.2 버전을 출시했는데 noConflict () 모드에서 jQuery를 호출하는 것을 잊어 버린 사람이 있다고 가정 해 봅시다. 빠른 패치를 수행하고 2.2.1을 즉시 릴리스하겠습니다.

버전이 증가하면 WordPress에서 업데이트를 인식하고 이미 버전 2.2를 설치 한 모든 사람에게 수정 사항을 제공합니다.

유지 보수 버전을 릴리스하려면 시스템의 정식 버전을 릴리스하는 것과 동일한 단계 를 따라야합니다 . 따라서 변경하고 readme.txt, commit /trunk, tag 등 의 버전을 늘리십시오 .

그러나 일단 태그를 한 후에는 다시 변경하지 않습니다. /tags폴더가 제 시간에 정지 된 것으로 생각하십시오 . 해당 폴더의 각 버전은 특정 시점의 플러그인 스냅 샷입니다. 폴더의 파일을 직접 변경 해서는 안됩니다/tags .

자신이 좋은 생각이라고 생각하는 경우, 머리 뒤쪽에서 자신을 때리고 대신 유지 관리 버전을 출시하십시오 :-)

Piet이 언급했듯이 앞서 단계별로 훌륭한 지침을 작성 했지만 사이트에서 스크린 샷을 잃어버린 것 같습니다. 내 사이트에 호스팅 된 Tortoise의 스크린 샷이있는 동일한 단계별 가이드의 다른 버전이 있습니다. http://eamann.com/tech/how-to-publish-a-wordpress-plugin-subversion/


2
좋은 대답입니다. 하나의 작은 편집 : 태그가 붙은 것을 절대 바꾸지 말라고하면 거의 사실입니다. readme 자체에 오타가 있다고 가정하면 수정하기 위해 유지 보수 릴리스를 수행 할 필요가 없습니다. 오늘 # wordpress-meta에서 주요 개발자 중 한 명과 채팅을했으며 , readme.txt 파일 있으면 태그 된 버전을 편집해도 됩니다. 다른 사람은 없습니다. 그러나 일반적으로 태그가 지정된 파일을 편집하지 마십시오.
Andy Mercer

좋은 대답입니다. 내가 추가 할 수있는 유일한 것은 플러그인 버전 번호와 관련하여 시맨틱 버전 관리 를 사용하는 것이 좋습니다. 필요하지는 않지만 사용자가 플러그인이 사이트가 손상된 경우 잠재적으로 사이트를 손상시킬 수 있는지 훨씬 쉽게 알 수 있습니다. 메이저 버전 변경. 플러그인 버전을 선택하기 위해 어떤 시스템을 구성하든 readme changelog를 업데이트해야합니다.
Aron
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.