Git에서 파일 복사하기¶
snow git copy
명령은 리포지토리의 지정된 상태(특정 분기, 태그 또는 커밋)에서 다른 스테이지 또는 로컬 파일 시스템으로 파일을 복사합니다.
snow git copy <REPO_PATH> <DEST_PATH> [--parallel INT]
여기서,
<REPO_PATH>
는 특정 범위의 스테이지 경로로, 값은 리포지토리 이름 뒤에 복사할 분기, 태그 또는 커밋을 지정하는 접미사가 붙습니다. 다음은 다양한 유형의 값을 나열한 것입니다.@snowcli_git/branches/main/
는 “기본” 분기의 마지막 커밋을 말합니다.@snowcli_git/tags/v2.1.0/
은 커밋 태그가 지정된v2.1.0
을 말합니다.@snowcli_git/commits/1e939d69ca6fd0f89074e7e97c9fd1/
은 특정 커밋을 말합니다. 커밋 해시는 6~40자 사이여야 합니다.
리포지토리 경로는 리포지토리의 하위 디렉터리 또는 파일일 수도 있지만, 이 경우에도 범위 접두사로 시작해야 합니다.
<DEST_PATH>
는 Snowflake 스테이지에서 로컬 디렉터리 또는 원격 디렉터리에 대한 경로입니다.--parallel
은 파일을 다운로드할 때 사용할 스레드 수를 지정합니다.
<DEST_PATH>
가 스테이지를 지정하면 다음과 같이 접미사 형식에 따라 명령이 다르게 작동합니다.
원본이
@my_snow_git/branches/main/tests/plugin/
같이/
로 끝나면 이 명령은plugin
디렉터리의 내용을 대상에 복사합니다.원본이
@my_snow_git/branches/main/tests/plugin
같이/
로 끝나지 않으면 명령은 전체plugin
디렉터리를 복사합니다.
예: 커밋에서 스테이지의 디렉터리로 파일 복사¶
이 예제에서는 스테이지 @public
에 snowcli2.0/
디렉터리를 만들고 v2.0.0
태그가 표시된 커밋의 모든 파일을 해당 디렉터리로 복사합니다.
snow git copy @my_snow_git/tags/v2.0.0/ @public/snowcli2.0/
예제: 디렉터리 내부의 파일을 스테이지의 디렉터리로 복사합니다.¶
다음 예제는 test_stage
스테이지에 plugin_tests
디렉터리를 만들고 tests/plugin/
디렉터리의 내용을 여기에 복사하는 예제입니다.
snow git copy @my_snow_git/branches/main/tests/plugin/ @test_stage/plugin_tests/
예제: 스테이지의 디렉터리로 전체 디렉터리 복사¶
이 예제는 test_stage
스테이지에 plugin_tests
디렉터리를 생성하고 전체 tests/plugin
디렉터리를 여기에 복사합니다. tests/plugin
은 노트가 /로 끝나기 때문에 이 명령은 모든 파일을 @test_stage/plugin_tests/plugin
에 복사합니다.
snow git copy @snowcli_git/branches/main/tests/plugin @test_stage/plugin_tests
예제: 스테이지의 디렉터리에서 로컬 파일 시스템으로 파일 복사¶
다음 예에서는 로컬 파일 시스템에 plugin_tests
디렉터리를 생성하고 tests/plugin
디렉터리의 내용을 다운로드합니다.
snow git copy @snowcli_git/branches/main/tests/plugin plugin_tests/