ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • github repository 연결하기!
    물망초. 2019. 10. 11. 01:48

    오늘 슬슬 "나만 볼거야 롤토체스 페이지" 제작 작업을 시작하려고 하는데,
    시작부터 Github repository 연결에서 막혔다...

    하고자 하는 것은 단순했다.

    1. 윈도우에서 폴더를 만든다.
    2. 폴더를 github에 만들어 놓은 repository와 연결한다.
    3. yarn create react-app 을 수행한다.

    였는데, 여기서 문제가 yarn으로 react-app을 만들면 특정 폴더에 만들게 되는데,
    또 github rep를 clone하면 새로운 폴더가 만들어진다.

    그럼 여기서 둘 중에 하나를 수행할 때 폴더가 이미 존재하므로 에러가 발생하는데.........


    그래서 멍청한 나는 이렇게 진행했다.

    > yarn create react-app test-app // react-app을 먼저 수행한다.(폴더를 만들자!)
    > git init    // git 명령어를 쓰자!
    > git config --global user.email "{email}"    // email을 등록하자!
    > git config --list // 설정을 확인하자!
    > git pull https://github.com/{id}/test-app.git // github repository를 pull 받아야겠다!
    From https://github.com/{id}/test-app
     * branch            HEAD       -> FETCH_HEAD
    fatal: refusing to merge unrelated histories    // 에러발생.
    > git remote add origin https://github.com/{id}/test-app.git // remote로 repository에 연결하자!
    > git pull origin master --allow-unrelated-histories // 구글링으로 찾았는데, 독립적으로 만든 두 프로젝트를 병합하는 드문 경우에 사용한다고...
    From https://github.com/{id}/test-app
     * branch            master     -> FETCH_HEAD
     * [new branch]      master     -> origin/master
    CONFLICT (add/add): Merge conflict in README.md
    Auto-merging README.md
    Automatic merge failed; fix conflicts and then commit the result. // 이 과정에서 conflict(충돌)이 나서 README.md가 머지가 된다.
    > git add * // 변경 항목을 이제 add 로 추가해보자!
    > git status // README.md가 modified 대상인지 확인!
    > git commit -m "init" // push 를 위한 commit "init"은 코멘트
    > git push origin master // orgin master에 push를 수행
    

    github 사이트를 가보면 정상적으로 push가 되어있다.


    하지만 문제...

    이 방법은 비정상적이다... fatal: refusing to merge unrelated histories 이 에러 자체가....
    밑에 링크에서 답변을 좀 읽다보면

    1. 이런 상황이 발생하는 것은 드물다. ( 여기서 쎄했다...)
    2. remote로 저장소를 설정하고 초기 pull 하는 경우에 발생한다. (서로 다른 프로젝트가 병합되는 과정에서 문제가 생긴다 정도로 이해를했다.)
    3. git push --force라는 것도 적혀있던데 쓰지말란다.. 다 덮어쓴다고.. 근데 초기에 덮어써도 될 경우.. 아니다 쓰지말자..

    Link:Stackoverflow


    결론

    초기에 기본 설정하는 경우 이런 케이스가 많을 것같다. 그냥 이런 경우에는 이렇게 작업을 시작하는게 좋을 듯 하다.
    Git이 필요할 때마다 보고 있는데, 좋다 너무나. 근데 이해가 안가는 것도 많다.
    브랜치도 공부해야하고 전체적인 줄기도 이해해야할 것 같다.
    오늘 밤도 꽤나 유쾌하게 보낸 것 같다.

    '물망초.' 카테고리의 다른 글

    그냥 잊지 말아야 할 것.  (0) 2020.05.26
    Hanoi tower  (0) 2020.01.12
    React.js v16.x 라이프 사이클에 대해서(기본만.)  (0) 2019.11.21
    최근 면접을 보면서 느낀 점.  (0) 2019.11.10
    [MobX] 경탄하다..  (0) 2019.10.25

    댓글

Designed by Tistory.