프로그램이 자동으로 업데이트되었다고 초콜릿에게 어떻게 알릴 수 있나요?

프로그램이 자동으로 업데이트되었다고 초콜릿에게 어떻게 알릴 수 있나요?

초코로 프로그램(Paint.Net)을 설치했습니다. 당시 버전은 3.13이었지만 Paint.Net은 3.15로 자체 업데이트되었습니다.

그러나 을 실행하면 choco outdated여전히 3.13이 설치되어 있다고 생각하고 3.15를 (다시)설치하려고 합니다.

설치된 패키지의 choco 로컬 데이터베이스에 있는 내용을 실제 현재 버전과 동기화하는 방법이 있습니까?

초코 무료 버전입니다.

답변1

이 옵션은 초콜릿에 존재하지만 유료 버전에만 있습니다. 그것은 동기화 명령. 위 링크에서 사용에 대한 자세한 정보를 확인하실 수 있습니다. 명령을 설명하는 비디오는 다음에서 찾을 수 있습니다. 유튜브.

Chocolatey는 다음에 설명된 대로 이 동기화를 자동으로 수행할 수도 있습니다.
프로그램 및 기능과 동기화(라이선스 에디션만 해당).


동기화를 수행하는 무료 초콜릿 프로그램 관리자는 다음과 같습니다. 배포, 시도해 볼 수도 있습니다.

긴급 상황에서 초콜릿이 특정 패키지를 업데이트하는 것을 원하지 않고 무시하고 싶다면 다음을 사용할 수 있습니다. 초코핀 명령어.

설치 스크립트를 실행하지 않고 Chocolatey가 설치된 애플리케이션을 인식하게 하려면 매개변수 -n, --skippowershell, --skip-powershell, --skipscripts, --skip-scripts를 사용하십시오 --skip-automation-scripts (모두 동일한 스위치임). 보다 스크립트를 실행하지 않고 패키지를 설치하거나 업그레이드하는 방법.


Linux apt-get에 대응하는 Microsoft의 PowerShell에 초콜릿을 인터페이스할 수도 있습니다. 원겟, 이제 패키지 관리로 이름이 변경되었습니다. 패키지 관리자는 Microsoft의 이름이고 기본 오픈 소스 프로젝트의 이름은 여전히 ​​OneGet입니다. 그러면 PowerShell을 Windows와 초콜릿 모두에 대한 고유한 인터페이스로 사용할 수 있습니다.

Microsoft 블로그에서 OneGet에 대해 읽어볼 수 있습니다.
PowerShell의 새로운 기능: Windows PowerShell 5.0을 사용하여 한 줄로 OneGet 시작하기.

OneGet은패키지 관리자의 관리자, 패키지 제공자로 Chocolatey를 지원합니다. 다음을 사용하여 PowerShell에 설치할 수 있습니다. Find-PackageProvider 명령:

여기에 이미지 설명을 입력하세요

그런 다음 다음을 사용할 수 있습니다. Install-PackageProvider 명령 초콜렛 인터페이스를 설정하려면 다음을 수행하십시오(아직 프로토타입이므로 주의를 기울여야 하므로 직접 경험해 보아야 합니다).

Install-PackageProvider chocolatey -Scope CurrentUser

다음은 초콜릿 갤러리에서 Notepad++를 설치하는 PowerShell 예입니다.

여기에 이미지 설명을 입력하세요

다음 참고 자료에서 자세한 정보를 찾을 수 있습니다.

답변2

이 답변은 다음 명령의 출력을 기반으로 합니다.

choco outdated

choco 오래된 명령의 출력

다른 답변에서 언급했듯이 오픈 소스 버전의 Chocolatey에서는 다른 방식으로 업데이트되는 애플리케이션 버전을 기반으로 Chocolatey 패키지 버전을 업데이트하는 자동 방법이 없습니다. 라이센스 버전의 Chocolatey에서는특징사용할 수 있습니다.

Chocolatey를 사용하여 애플리케이션의 초기 설치를 수행하려는 경우, 즉

choco install paint.net

그런 다음 애플리케이션이 자동으로 업데이트되도록 두면 가장 좋은 조언은 다음을 사용하여 패키지를 고정하는 것입니다. 명령. 이는 다음 명령을 사용하여 수행됩니다.

choco pin add -n="paint.net"

choco upgrade all이는 명령을 실행할 때 해당 명령을 사용하고 있다고 가정하면 새 버전이 발견되더라도 이 패키지는 더 이상 업그레이드 대상으로 간주되지 않음을 의미합니다 . 또한 명령의 출력은 choco outdated다음과 같이 변경됩니다.

pin 명령 후 choco의 출력이 오래되었습니다.

정말로 보고서에서 항목을 제거하고 싶지만 choco outdated애플리케이션의 자체 업데이트 기능도 사용하려는 경우 다음 명령을 실행할 수 있습니다.

choco upgrade paint.net --skip-automation-scripts

이는 Chocolatey에게 패키지를 현재 사용 가능한 버전으로 업그레이드하도록 지시하지만, 또한 ChocolateyInstall.ps1(및 기타 파일) 파일의 실행을 방지하므로 응용 프로그램 설치 프로그램이 실행되지 않습니다. 여기에 표시된 대로:

자동화 스크립트를 건너뛸 때 choco 업그레이드 명령의 출력

위 명령을 실행한 후 명령의 출력은 choco outdated다음과 같습니다.

업그레이드 후 choco의 출력이 오래되었습니다.

관련 정보