지옥에서 온 Git

git이 관리할 대상으로 파일 등록

수업소개

git은 기본적으로 새로운 파일을 관리하지 않습니다. 파일을 관리하기 위해서는 관리 대상으로 등록을 해야 합니다. 여기서는 등록하는 방법을 알아봅니다. 

파일을 생성합니다. 

vim f1.txt

git이 파일을 추적하도록 명령합니다. 

git add f1.txt

프로젝트 폴더의 상태를 확인합니다. 

git status

 

댓글

댓글 본문
작성자
비밀번호
  1. 김수현
    파일을 생성해야 하는데 편집기로 vim사용할 것임
    vim이라는 에디터를 사용할 것임(모든 곳(리눅스,윈도우, 맥)에 설치되어 있는 에디터)
    단점 : 사용하기 까다롭다

    ( vim에디터에 대해 검색해 보니...
    https://www.youtube.com......KjA <--동영상 강의
    http://book.naver.com......vim <-- 책들
    그런데 vim쓰지말고 atom을 쓰라고 나오네요.
    https://medium.com......ca4 )
    아톰강의 https://opentutorials.org......579
    (아톰은 github에서 만들었다고 합니다. https://blog.outsider.ne.kr/1035)
    (이곳의 수업 진행시는 vim으로 하는 것을 권합니다. 그외 편집기는 나중에 알아보시길...권합니다.)

    f1.txt라는 파일을 만든다, 숫자 1을 입력한다 ==> vim f1.txt > i를 입력 > 입력모드로 바뀜 > 숫자1입력> Esc키 > :wq
    ls -al 파일 생성 확인
    f1.txt 내용을 보려면 > vim f1.txt해도 되지만 cat f1.txt해도 됨
    새로 생성된 파일을 git으로 관리해야 함. 그전에
    git status
    언트랙트 파일이라고나옴 (추적되고 있지 않다는 뜻)
    git add f1.txt < 이제부터 파일을 관리해 줘라
    왜 add를 사용하냐 하면, 임시로 저장되는 파일+추적해야 하는 파일이 디렉토리에 생성되기 때문에
    어느 파일을 추적해야 할지 알려줘야함
  2. crable
    감사합니다
  3. $ git
    -> git이 잘 설치되었는지 알아보는 명령어
    $ pwd
    -> 현재 나의 위치를 알 수 있는 명령어
    $ cd Documents/
    -> 나의 위치에서 C드라이브 Documents로 이동
    $ mkdir git
    -> 해당 위치에 git이라는 폴더를 만들겠다
    $ ls -al
    -> 해당 위치의 파일들 목록을 보여주는 명령어
    C:\Users\Min A\Desktop\[01] 업무\[20] 수은불망\[22] 프로젝트
    $ git init
    -> git 저장소 초기화 즉 생성됨
    지정된 폴더를 버전관리하겠다고 지정해주는 명렁어
    $ vim f1.txt
    ->vim 이라는 프로그램으로 f1.txt 파일 생성하겟다

    알파벳 I를 누르면 Insert 모드로 변함
    ESC 누르면 입력 끝남
    알파벳 R 누르면 다시 입력모드

    작성하고 :wq
    -> 프로그램에서 빠져나감
    $ cat f1.txt
    -> f1.txt 파일을 읽는 명령어

    $ git status
    -> 현재 git이 관리하고 있는 것에 대한 상태
    $ git add f1.txt
    -> f1.txt를 인식하고 버전관리를 시작함
  4. 폭스킴
    cat f1.txt
  5. 재밋당
  6. 박동연
    잘보고 갑니다
  7. 처음에
    warning: LF will be replaced by CRLF in f1.txt.
    The file will have its original line endings in your working directory.
    경고 창이 떴습니다. 밑에 engladgut님 댓글을 보기전 f1.txt 파일을 열고 줄바꿈을 지우고 다시 저장했습니다.
    그리고 git status 명령어를 입력하니까
    Changes not staged for commit:
    (use "git add <file>..." to update what will be committed)
    (use "git checkout -- <file>..." to discard changes in working directory)

    modified: f1.txt

    라는 문구도 추가로 출력되었습니다.
    이 문구는 제가 파일을 수정했기 때문에 발생한 문구인가요?
  8. Soyoung Park
    미흡하지만 조금이나마 도움이 될까 해서 남겨봅니다.

    [vim f1.txt] vim으로 f1.txt 파일 만들기
    [i] vim 입력모드
    [esc 버튼] 입력모드 빠져나오기
    [:wq] 입력한 내용 저장 및 종료
    [cat f1.txt] f1.txt 파일 내용 보기

    [git status] 프로젝트 파일 및 폴더 상태 확인
    처음 실행했을 땐 Untracked files 라고 뜸

    [git add f1.txt] f1.txt 파일 추적 시작(추가)
    [git status] 추적 시작 후 상태 확인 하면 파일명 앞에 new file 이라고 뜸
  9. 겜맨들맨
    잼잇쪙
  10. egoing
    같습니다~ 먼가 다른 문제가 아닐까요?
    대화보기
    • JohnHan
      git shell을 사용하고 있는데
      ls -al 이 안되네요...
      (빨간색으로 "매개변수 이름 'al'과 일치하는 "것이 없다고 나와요..)
      (그냥 ls를 입력하면 f1.txt 만 나와요)

      git shell은 명령어를 다르게 입력해야 하는 건가요?
    • 조언자
      콜론은 : << 이걸 말합니다.
      ; << 이게 아니라.
      : << 이거 입니다. shift 눌러야 합니다.
    • engladgut
      네 맞습니다. 개발자용 편집기들은 cr만 있던가 lf만 있던가... 아님 crlf 다 있던가... 어지간히 알아서 잘 처리해주는 편인데 윈도 메모장 같은 애들은 그런건 처리해주지 않죠.
      대화보기
      • engladgut
        항상 좋은 강의 잘 듣고 있습니다. 제 답변이 맘에 드셨다니 보람있네영. 껄껄
        대화보기
        • 폭스킴
          와~ 엄청난 답변 감사합니다. ^^ 메모장으로 열어보니까 글자 뒤에 특수기호가 있던데 이게 그건가 보군요~!
          대화보기
          • egoing
            완벽한 설명이네요! 저도 두루뭉실하게 알았는데 정리가 착 되었어요~
            대화보기
            • engladgut
              사람의 눈에는 안 보이지만 텍스트 파일을 저장할 때 줄바꿈도 눈에 보이는 문자와 마찬가지로 문자로 저장이 됩니다. 일종의 특수 문자인거죠. 근데 os에 따라 줄바꿈 문자가 좀 다릅니다.

              줄바꿈에 사용되는 문자가 몇개 있는데 cr 이라고 하면 캐리지 리턴의 약자로 줄이 바뀌는걸 뜻하고
              lf라고 하면 라인 피드라고 해서 커서를 새로운 줄의 맨 앞으로 옮기는 걸 뜻합니다.

              새줄 문자에 대한 자세한 내용은 아래 링크 함 읽어보세요.

              https://ko.wikipedia.org......%90

              위 링크에도 설명이 나옵니다만, 60년대에는 메모리가 엄청 비싸고 느렸기 때문에 멀틱스와 유닉스는 lf만 사용하기 시작합니다. Mac osx과 Linux같은 유닉스 계열의 os는 그걸 그대로 이어받았고요.

              타자기 같은 기계들이 현역으로 사용될 때 나온 표준이라 cf+lf로 표현이 됐던건데 (참고로 타자기나 아주아주 오래된 인쇄기 따위의 기계들은 이렇게 작동합니다. 줄바꿈 따로, 종이 맨 앞으로 옮기는거 따로) 사실 모니터 같은데에 표시하기엔 저렇게 두개의 문자로 표시할 필요가 없거든요.

              근데 윈도우에서는 crlf를 씁니다. 그래서 맥쓰는 사람과 윈도쓰는 사람이 함께 일하면 줄 바꿈 문자에 문제가 생기게 됩니다. 아무것도 아닌 것 같지만 상당히 짜증나는 문제거든요.

              그래서 깃은 커밋할 때 자동으로 crlf를 lf로 변환해주고 반대로 채크아웃 할 때 lf를 crlf로 변환해 주는 기능이 내장되어 있습니다. 설정으로 이 기능을 켤 수 있고, 윈도에서 이 값을 true로 설정하면 Checkout할 때 lf 문자가 crlf 문자로 변환됩니다.

              깃이 자동으로 이런 처리를 해주면서 사용자에게는 경고 메시지를 보여주는거죠. 자기 맘대로 사용자의 파일을 손을 대는 거니까 말이죠.
              대화보기
              • 폭스킴
                저는 git add f1.txt 명령을 내렸더니 이고잉님과 다르게,

                warning: LF will be replaced by CRLF in f1.txt.
                The file will have its original line endings in your working directory.

                이런 메시지가 출력되네요? 무슨 뜻인가요?
              버전 관리
              egoing
              현재 버전
              선택 버전
              graphittie 자세히 보기