ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [매일읽기] 7 Git Best Practices to Start Using in Your Next Commit
    개발자 라이프/매일읽기 2020. 9. 5. 10:12
    반응형

    원문 : medium.com/sourcelevel/7-git-best-practices-to-start-using-in-your-next-commit-f9dc54990e86

     

    7 Git Best Practices to Start Using in Your Next Commit

    Every software has best practices. Git is not different. It has become the most used versioning system in the last years. Many companies…

    medium.com

    1. master 브랜치에 바로 푸시하지 마라

    • master는 최종 배포를 위한 브랜치
    • 별도의 브랜치를 따서 작업하고 머지할 것

    2. 작성자의 신원을 잘 작성하라

    • 커밋 과정에서 포함되는 작성자의 이름과 이메일을 잘 작성할 것
    • 커밋은 하나의 커뮤니케이션 툴이고 커밋 후 변경에 대해서 도움이 필요할 수 있음
    • `git blame <file_name>`으로 다음을 알 수 있음
      • 최근 커밋으로 변경된 부분
      • 커밋의 작성자
      • 커밋된 시간

    3. 커밋 메시지는 상세하고 의미 있게 작성하라

    • 커밋은 하나의 커뮤니케이션 툴이므로 커밋 메시지를 상세하고 의미있게 작성하면 협업 과정에서 많은 도움을 줄 수 있음
    • `git log`를 통해 커밋 기록들을 확인할 수 있음
    • "버그 수정"과 같은 추상적인 메시지들은 생각보다 많은 문제를 야기함

    4. 연관된 작업에 따라 커밋

    • 객체지향 SOLID 원칙 중 단일 책임 원칙(S)과 마찬가지로 커밋도 연관된 하나의 작업의 단위로 나눠서 함

    5. master 브랜치의 히스토리를 변경하지 마라

    • 커밋 로그 기록을 변경하는 방법은 많은 방법이 있지만 git rebase -i를 가장 추천함
      • 커밋 순서를 변경하거나
      • 커밋을 지우거나
      • 두 개 이상의 커밋을 합치거나 수정하는 등을 할 수 있음
    • master 브랜치는 여러 공동 작업자들이 바라보고 있기 때문에 master 브랜치의 히스토리를 변경하면 큰 문제를 야기함
      • master 뿐만 아니라 배포되어 공동 작업자들이 있는 브랜치 모두
      • 로컬 브랜치에서는 언제든지 상관없음

    6. 작업하고 있는 브랜치는 자주 rebase 하라

    • 현재 작업하고 있는 코드와 최신으로 업데이트된 코드 사이에 충돌이나 버그가 발생할 수 있으므로 자주 rebase 해서 최신 상태를 유지함
    • rebase 명령어 과정
      • git checkout <upstream\_branch>
      • git pull
      • git checkout -
      • git rebase <upstream\_branch>
    • git fetch --prune 명령어를 사용하면 별도의 upstream 브랜치로 checkout 할 필요 없음

    7. git에 대해 파악하고 사용하라

    • git은 위에서 언급한 것 외에도 다양한 기능을 제공함
      • git cherry-pick
      • git diff
      • git apply
      • git stash
      • git bisect

    읽고 나서

    • 아직 다양한 명령어를 사용해보지 않아서 생소한 부분이 많음
    • 이번 카프카 작업하면서 이것저것 사용해봐야겠음
    반응형

    댓글

Designed by Tistory.