서버에 대한 액세스 권한을 부여했으며 git repo를 내 루트 폴더에 복제하고 싶습니다. 그러나 git clone을 수행하면 프로젝트 이름으로 폴더가 생성되고 프로젝트 폴더는 내 루트입니다. 내 상위 폴더에 대한 액세스 권한이 없습니다. 내 루트는
/var/www/sites/mysite/
복제 할 때 폴더 구조는
/var/www/sites/mysite/mysite
서버에 대한 액세스 권한을 부여했으며 git repo를 내 루트 폴더에 복제하고 싶습니다. 그러나 git clone을 수행하면 프로젝트 이름으로 폴더가 생성되고 프로젝트 폴더는 내 루트입니다. 내 상위 폴더에 대한 액세스 권한이 없습니다. 내 루트는
/var/www/sites/mysite/
복제 할 때 폴더 구조는
/var/www/sites/mysite/mysite
답변:
git clone
대상 디렉터리 인 마지막 인수를 허용하며 기본적으로 프로젝트 이름이지만 변경할 수 있습니다. 귀하의 경우에는 단순히 .
다음을 원할 것입니다 .
$ git clone origin-url .
그러나 다음에서 유의하십시오 man git-clone
.
기존 디렉토리로의 복제는 디렉토리가 비어있는 경우에만 허용됩니다.
git clone @rodrigo ./heaven
git clone aaa/bbb
. 두 단계를 수행하려면 시도 할 수 git clone ..
있지만 부모 디렉토리가 비어 있지 않기 때문에 작동하지 않습니다.
folder1\folder2\pom.xml
pom.xml
pom.xml
새 저장소를 설정 한 다음 추적 원격 및 분기를 설정할 수도 있습니다.
git init .
git remote add origin git@github.com:user/repo.git
git fetch origin
git checkout master
git branch --set-upstream-to=origin/master master
그런 다음 로컬 변경 사항을 원격 분기로 푸시해야했습니다. git push --force
이것은 이전 원격 분기를 로컬 최신 복사본으로 대체했습니다.
git 저장소는 단순히 저장하는 디렉토리 구조임을 기억하십시오. 즉, 저장소를 잘못된 디렉토리로 복제 할 때 원하는 다른 위치로 디렉토리 내용을 간단히 이동할 수 있으며 저장소 데이터는 그대로 유지됩니다. 따라서 예를 들어 명령 줄에서 다음 명령을 실행할 수 있습니다.
$ mv /var/www/sites/mysite/mysite/* /var/www/sites/mysite`
$ mv /var/www/sites/mysite/mysite/.* /var/www/sits/mysite`
$ rmdir /var/www/sites/mysite/mysite
프로젝트를 하위 폴더로 복제하고 .git
폴더를 포함한 모든 파일을 상위 폴더 (루트)로 이동할 수 있습니다 .