2013-10-05 3 views
1

우리는 JIRA와 Github을 함께 사용하고 있습니다. 이제 우리는 JIRA 티켓에서 볼 수있는 일부 코드가 이미 Github에 푸시되고 있음을 알았습니다. 링크를 클릭하면 Github으로 이동하여 변경 사항을 볼 수 있습니다. 그러나 모든 코드는 현재의 지사에 포함되어 있지 않습니다. 그리고 심지어는 로컬 프로젝트에서 오른쪽 클릭 - 로그보기 (tortoiseGit), 그 티켓 및 푸시 레코드가 로그에없는 파일을 찾으러갑니다 ... 모든 브랜치를 바꿔서 그 레코드를 찾으려고했지만 어디서나 그것을 찾을 수 없습니다.Github에 코드가 없습니다.

커밋 해시가 있습니다. 해시 코드를 체크 아웃했는데 변경 사항이 다시 돌아 왔음을 확인할 수 있지만 현재 지사는 아닙니다. 때 일어날 수있는 무슨 일이 있었는지 모르겠다 ... 누군가가 전에이 문제를 가지고 어떻게 다시 현재의 지점에 모든 코드를 얻을 수

답변

3

당신은 당신의 검색을 단순화 할 수 있습니다 :

git branch --remote --contains <commit-id> 

당신이이 작업 지점 (git merge <commit-id>)에 커밋 병합 할 수 있습니다,

이러한 변경을 얻으려면 (How to list branches that contain a given commit? 참조).

VonC에서 제시하는 것처럼 리베이스 또는 강제 삭제가 가장 큰 원인입니다.

+0

나는 그 (것)들을 어떤 방법든지 합병해야 한 ㄴ다고 나는 생각한다 ... 고맙다. –

+1

내 옛 대답 중 하나에 대한 링크;) +1 – VonC

0

를 않았다

  • 당신이 지점을 리베이스, 이는 모든 SHA1이
  • 당신이 지점을 삭제 (및 해당 분기의 삭제를 밀어) master (예를 들어)에서
  • 당신에게 merge --squash a branch 한 다음 로컬
  • 을 해당 분기를 삭제 (당신이 당신의 reflogs에 이전 SHA1 유지) 다시 작성

SHA1을 사용하여 로컬로 체크 아웃 할 수 있다면 최소한 SHA1에서 시작하는 로컬 분기를 만들고 다시 푸시 할 수 있습니다.

+0

로컬로 체크 아웃 할 수있을뿐만 아니라 다른 사람들도 github에서 코드를 체크 아웃 할 수 있습니다. –