2016-09-05 9 views
1

현재 사이트 빌드에서 더 나은 버전 제어를 위해 Git을 설정하려고합니다. (Git을 처음 사용하는 경우입니다.) - 방금 수동으로했습니다. 파일을 복제하고 나는 힘내의 커밋 시스템이 훨씬 더 나은 해결책이라고 생각한다.로컬/원격 설정 문제 (Coda 2 및 터미널 포함)

MacOS 11을 실행 중이며 Xcode를 사용하여 Git을 설치했습니다. 그때 돌려 내 로컬 컴퓨터,에 git init 명령을 사용 /usr/bin/git

를 반환 내가 $which git를 사용하여 내 로컬 시스템에서

mkdir ~/.git 
cd ~/.git; mkdir project.git; cd project.git 
git init 
Initialized empty Git repository in /home/user/.git/project.git/.git/ 

: 내 원격 서버에 나는 SSH 세션에서 터미널을 사용하여 다음 명령을 사용 initialized Git repository in /Users/user/.git/. 여태까지는 그런대로 잘됐다.

git remote -v 
origin ssh://[email protected]:/home/.git/project.git (fetch) 
origin ssh://[email protected]:/home/.git/project.git (push) 

그래서 모두가 작동하는 것 같군 :

은 그 때 나는 나를 가져 git remote -v 사용 (분명히 올바른 사용자 세부 사항) 다음 명령 git remote set-url origin ssh://[email protected]:/home/.git/project.git

을 사용했다. 문제는 여기에 있습니다. 소스 탭의 Coda 2에는 '로컬'표시 만 있고 원격 드롭 다운은 없습니다. 또한 터미널에서

, 나는 시도하고 명령 git push origin --all을 사용하는 경우 나는 다음과 같은 오류가 발생합니다 :

stdin: is not a tty 
fatal: '/home/.git/project.git' does not appear to be a git repository 
fatal: Could not read from remote repository. 

사람이 내가 잘못 갈거야 어떤 생각을 가지고 있습니까? 나는 그것의 무언가를 간단하게 추측하고있다. 그러나 나는 많은 유사한 대답을 여기서 읽었고 문제를 식별 할 수 없었다. 나는 또한 기쁨에 git dir reinitialising 시도했다!

+1

. 폴더를위한 확장자'.git'는 또한 bare repos를 위해 예약되어야합니다. 2) 전체 홈 디렉토리를 git 저장소로 만들었습니다. 그게 정말로 의도 된가요? 대신에'git init project' 또는'cd project && init init'을 원했을 것입니다. –

+0

아니요 내 전체 홈 디렉토리를 repo로 만들려고 한 것이 아닙니다! 이 작업을 어떻게 취소 할 수 있습니까? – hj8ag

+1

당신은 단순히 모든 커밋/지점/당신의 완전한 기록을 삭제하고, 그대로하는'RF RM은 .git /'충분하다 만 작업 디렉토리를 마칠 경우. –

답변

0

그래서 나는 처음부터 다음 단계에 따라이 문제를 해결 다 내가 파일을 내 로컬 컴퓨터에 새로운 루트 디렉토리를 생성하고 사용하는 단말기는 원격 Git 저장소를 복제

git clone ssh://[email protected]/path/to/project.git 
cd project 
  1. 나는 다음 코다 내에서 모든 것을 설정하고 내 파일 디렉토리와 같은 로컬 루트로 이것을 사용했다. 이 버전 제어에서 '지역'하지만 원격하지
    내게 준.

  2. 나는 Coda에서 내 파일을 편집하고 SCM 세로 막대를 사용하여 저장소에 추가했습니다. 가 추가 된 후

  3. 나는 터미널
    명령을 사용하여 서버로 밀고 다시 코다 갔다, 저장, 사이트를 종료 한 다음 내 '원격'폴더는 사이트 설정 내에서 소스 탭에 등장 -쪽으로.

모두 나를 밀고 당기는 것 같습니다. 1) 아무도가 작동하지 않습니다,하지만 당기는/밀어 위해 단지 사용되는 REPO는, --bare``해야한다 : 사이드 참고로

0

처음부터 시작하겠습니다. 원격 저장소에

, 당신과 같이 베어 REPO으로 자식을 초기화해야합니다

git init --bare 

베어 자식의 repo 만 .git 디렉토리와 디렉토리입니다. 작업 영역 파일이 없습니다. --bare 옵션을 지정하지 않으면 원격 저장소의 파일을 수정하려고한다는 메시지가 표시 될 때마다 오류 메시지가 표시됩니다. 원격 REPO를 초기화 한 후

, 당신은 쉽게과 같이 로컬 컴퓨터에 REPO를 복제 할 수 있습니다

username
git clone [email protected]:/path/to/.git 

서버의 로그인 이름입니다. hostname은 도메인 이름 또는 서버 ip입니다.

내가했다 내 상자에 SSHing하고 나면 다음

mkdir git 
cd git 
git init --bare project.git 

를 사용하여 내 서버에 새로운 자식 저장소를 생성 - 좋아