2016-08-08 2 views
-1

... 아마도 내가 잘못 사용했기 때문일 것입니다.Git pull이 예상대로 작동하지 않습니다.

Szenario : 로컬 저장소와 원격 저장소 (준비 저장소)가 있습니다. 이제는 로컬 저장소에서 개발하여 커밋하여 원격 저장소에 푸시했습니다. 그런 다음 내 REMOTE 저장소에서 "newfiletest"파일을 추가했습니다. 나는 "git pull staging master"를 로컬에서 수행 할 때 "newfiletest"파일을 다운로드해야한다고 생각했다.

희망을 받으 라. P 나는 좀 힘내 라.

+0

원격 저장소에 새 파일을 커밋 했습니까? – Ryan

+0

'git remote show origin'과'git branch -av'를 보여 주면 도움이 될 것입니다. – Christoph

답변

0

그래서 당신은 당신이 다음

git remote add <remote_name> <url> 

했다 있도록 원격 상류 밀어하려는 결정은 다음
git add -A 
git commit -m "Embrace my epic programming skills" 

를 한 다음 로컬 저장소에 몇 가지 작업을했고,
git push -u <remote_name> <branch> 

힘내에서 사용자 이름을 묻습니다.비밀번호 인증 이유 및 혐의로! 당신은 당신의 물건을 상류로 밀었습니다.

그런 다음 Git 허브에에 새 파일 (예 : .gitignore, readme.md 등)을 만들기로 결정했습니다. 당신은 그렇게 다음이 가져오고

+0

정확하지 않습니다. 나는 Git Hub를 사용하지 않았다. 원격 서버에서 "git init --bare"를 사용하여 맨 처음 저장소를 만들었습니다. 그리고 그 저장소를 로컬로 "스테이징"으로 추가했습니다. 그래서 원격 서버에서 새 파일 "newtestfile"을 만들었습니다. 내가 로컬에서 "git pull staging master"할 때 내 로컬 저장소에 다운로드되지 않습니다. – SVARTBERG

+0

그래서 자신의 git 저장소를 호스팅 할 서버를 구성 했습니까? : s 위의 예는 * Git Hub *입니다. 좀 더 고급화되고 자신의 서버를 설정하기 전에 그것에 대한 느낌을 얻으려고합니다. –

+0

글쎄 실제로 git가 설치된 웹 서버입니다. 그리고 "git init --bare"를 실행 한 폴더가 있습니다. 그리고 나는 여러분의 예제와의 차이를 실제로 보지 못합니다. 사실 똑같은 일을하고 있어요. – SVARTBERG

0

문제는 당신이 당신의 서버에 커밋하게하지 않는 한, 자식을 추적 할 수 없을 것입니다 해당 지역의 repoistory의 상단에 변경 사항을 병합해야

git pull 

을 실행 그 새 파일. 파일을 폴더에 넣는 것만으로는 충분하지 않습니다. 커밋을해야합니다. 결코 시도하지 않았으므로 서버에 직접 커밋 할 수 있는지 확실하지 않지만 왜 작동하지 않는지는 알 수 없습니다. 서버에 git addgit commit을 사용하여 새 파일을 저장소의 일부로 만드십시오.

+0

나는 이해한다. 잘. 그것은 내 실제 문제를 해결하지 않을 것입니다. 고객에게 진행 상황을 보여주는 준비 서버로 사용합니다. 내 로컬 작업을 서버로 푸시하면 후크 (post-receive)가 지정된 작업 디렉토리에 파일을 넣습니다. 내가 원했던 것은 누군가가 서버에서 무언가를 바꿀 때 안전하다는 것입니다. 나는 서버의 현재 상태를 얻기 위해 당겨보고 싶었다. – SVARTBERG