묻고 답해요
130만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨모두의 깃 & 깃허브
sourcetree 스태시 옵션 관련 질문
sourcetree에서 스태시를 하면와 같은 옵션 창이 뜨는데, 각 옵션이 무슨 의미인지 궁금합니다.
-
미해결실무자가 알려주는 Git - 입문편
.gitignore 관련 문의입니다.
안녕하세요. 이번에 좋은 기회로 수강을 하게 되었는데요. 아직 강의 초반이긴 하지만 협업 관련 궁금해서 문의드립니다 깃허브에 A라는 프로젝트가 올라가 있습니다. 이를 로컬 pc에서 clone을 이용해서 다운로드 하여서 이클립스에 import를 하였습니다. 해당 프로젝트를 B라고 하겠습니다. A프로젝트는 tomcat7, jdk8 구성이었고 로컬PC는 tomcat9, jdk8 환경입니다. A프로젝트를 로컬로 가져온 B프로젝트에서 tomcat을 9로 설정하니 .classpath .settings/org.eclipse.wst.common.component .settings/org.eclipse.wst.common.project.facet.core.xml 등이 새로 생기더라고요 보니깐 A프로젝트를 깃허브에 올릴때 환경과 B프로젝트에서의 환경차이로 인해 생기는거 같은데요. 처음부터 .ignore 를 썼으면 모르겠지만, ignore에 작성을 하지 않아서 위의 파일들이 tracking 대상이 되는거 같습니다. 여기서 제가 하고 싶었던건 환경차이로 인해 생긴 B프로젝트의 .classpath파일같은 것을 더 이상 tracking하지 않고 B프로젝트에서 수정만 소스만 깃허브에 올리고 싶습니다. 그래서 인터넷에 찾아보니 .gitignore를 수정하고 git rm -r --cached git add . git commit -m 'remove ignore' git push {remote}{brach} 이렇게 ignore 를 수정해서 다시 올리는 방법이 있더라고요. 저렇게 해서 올리면 일단 history에 ignore 수정한 내역이 올라옵니다. 여기서 궁금했던게 깃허브에 있는 A프로젝트를 다른 제 3자가 pull을 해서 받습니다. 이때 gitIgnore로 추가한 .classpath 등의 파일이 삭제된 상태로 제3자한테 pull이 됩니다 ㅠㅠ 간략 요략드리면 A프로젝트의 .classpath는 그대로 유지하면서 로컬의 gitIgnore 대상이 아니라서 tracking 대상이 된 B프로젝트의 .classpath 파일만 tracking 대상에서 제외할수 잇는 방법은 없을까요? A프로젝트의 저런 환경파일들이 실제 서버의 배포환경부분이 포함되어 있다면 이 부분은 건들지 않고 그대류 유지만 하고 수정한 소스만 올리고 싶어서요...... 말로 하니 설명이 기네요 ㅠㅠ