2014-01-16 6 views
0
project 
    |---src 
    |---main 
    |---config.xml 

나는 모든 소스 코드와 일부 설정 파일을 가지고있는 src 폴더를 가진 프로젝트 폴더를 가지고있다. src에서 나는 git 저장소를 유지했고 많은 커밋을했다.삭제 된 폴더를 자식으로 복원

최근에 내가 config의 백업을 가지고 poit 폴더에 git repo를 만들고 싶었습니다. config로 커밋 된 프로젝트.

불행하게도 나는 그래서 난 한 외부 위탁이 [RM은 -rf *] [많은 자식의 repo를 사용하고 잘못 여기 삭제]

전체 폴더를 삭제. 많은 것은 src 안에 커밋한다.

는 내가 그것을 구조를 검색하고 어떤 파일이 SRC 내에 존재하지
git reset HEAD --hard 

을 시도 할 때. 해당 파일을 검색하는 방법?

도움을 주시면 감사하겠습니다.

답변

0

당신은 git checkout .를 사용하여 작업 트리에 다시 삭제 된 파일을 체크 아웃 할 수 있습니다.

0

불행히도, 나는 가능하다고 생각하지 않습니다. :-)

당신이 한 일은 (무의식적으로?) src 폴더를 불완전한 설정 하위 모듈로 추가 한 것처럼 들립니다. src 폴더에 후미 슬래시를 명시 적으로 추가하지 않으면 Git이 하위 모듈 (예 : gitlink)을 설정하려고한다고 생각했을 것입니다.

git add src  # Tries to set up a proper submodule 
git add src/ # Tracks changes in src from project 

난 당신이 처음에하고 싶었던 가정 무엇 이는 faking a submodule에 대한 링크를 참조하십시오.

+0

@ NoufalIbrahim, 나는'git add'를 수행 할 때 슬래시를 포함하는 것을 잊어 버리는 것의 사소한 차이점은 하위 모듈을 설정하려는 시도로 당신의 행동을 해석하는 결과가 될 것이라고 지적했다. 나는 OP가 서브 모듈을 설정하는 것에 대해 질문하지 않는다는 것을 알고 있습니다.하지만 OP에게이 뉘앙스를 알리고 싶었습니다. – miqid

+0

나는 서브 폴더 src [git repo]를 추적해야한다고 생각했다. 왜 그걸 복구 할 수 없습니까? – Dineshkumar

+0

@Dineshkumar,'src' 안에있는 파일들에 영향을 미치는 커밋 객체는'src' 폴더에 후행 슬래시를 명시 적으로'git add'하지 않으면'src'와'not *'project'의'.git' 폴더 안에 저장됩니다 . 따라서 일단'src' 폴더를 잃어 버리면 ('.git' 폴더에 들어 있습니다. 파일을 재구성하는 데 필요한 커밋이 있습니다)'project'에서'src' 파일을 재구성 할 수 있다고 생각하지 않습니다. 왜냐하면'src' 파일에 영향을주는 커밋은'project'의'.git' 폴더에 저장되지 않았기 때문입니다. – miqid

관련 문제