일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
- #코딩독학 #코딩인강 #코딩배우기 #개발자 #코딩이란 #코딩교육 #프론트엔드부트캠프 #백엔드부트캠프 #국비지원부트캠프 #개발자 #백엔드 #AI부트캠프 #개발자국비지원 #백엔드개발자
- 파이썬 #python #기초 #기본
- #프론트엔드개발자
- Today
- Total
아자아자 화이팅이닷 !
231229 엘리스 SW트랙 1주차 Day5 본문
* Git의 특징
- 가지치기와 병합이 가능하다. (일/기능 단위로 작업 가능)
- 가볍고 빠르다. (대부분 서버와의 통신없이 로컬에서 진행됨) / [반대] SVN은 중앙시스템에서 코드 공유
- 분산 작업에 효율적 (모든 사용자들이 모든 코드를 가지고 있음)
- 무결성 보장 (데이터 보장) / 모든 파일은 "체크섬"이라는 검사 과정을 거침 / 체크섬은 16진수 문자열로 이루어져 있음 -> commit ID라고도 불림 / commit ID가 같은것은 파일 또는 구성이 완벽히 같다는것을 의미 / 버전 관리도 편함
- 준비 영역을 가지고 있음 / 수정한 내용을 repository에 반영하기 전 검토하는 단계 / 작업 디렉토리에서 반영할 파일을 git add라는 명령어로 staging area에 선택을 하고, staging area에서 실제로 파일을 저장소에 반영하는 git commit 작업을 마치게 됨
- 오픈 소스 (소스 공개, 누구나 사용 가능)
* git version : git의 버전 확인
* git init : 기존의 디렉토리를 git repository로 설정 / git 저장소 생성
* git config --global user.name "이름" : git관련 작업 기록에 남는 이름 수정
* git config --global user.email "이름" : git관련 작업 기록에 남는 이름 수정
* git config --list : git 설정 확인
* Git add를 하면
이렇게 옮겨짐 !
* Git commit은 .git 저장소 내에 staging area에 있는 모든 파일을 저장
이렇게 옮겨짐 !
* git commit --amend로 내용 수정 가능
- 여기에서 commit 메세지 수정할 때 큰따움표 "" 꼭 쓰기 ^^ ....
git commit --amend -m "add main.py"
라잌 디스 ..
* git log로 모든 commit 확인 가능
- git commit -m <커밋 메세지>를 이용하면 에디터 없이 바로 커밋 메세지를 작성할 수 있어요.
- 만약 git commit이라고 적으면 nano에디터가 켜져요.
- nano에디터에서는 Ctrl+X -> Y -> Enter 순서로 누르면 저장할 수 있어요.
이런 팁도 얻을 수 있었다 !
* git status는 staging file들의 상태 확인
* git log는 .git repository에 존재하는 commit history를 확인
* git log --graph는 commit간의 연결된 관계를 아스키 그래프로 출력 => branch가 나왔을 때 유용 !
* Unmodified 파일은 항상 Git 저장소에 있는 파일과 내용이 같음을 보장할 수 있다.
* master 브랜치에서 다른 것 변경된것 없이 새로운 내용만 추가된다면 fast-forward 병합이다 !
* git branch -d <branch name>을 하면 branch 삭제
* git reset --hard <커밋 해시>를 사용하면 현재 브랜치를 특정한 커밋으로 이동할 수 있다.
를 할때에는 5-2-3-1-6-4 순으로 하면 됨 !
* Git 원격 저장소를 받아오는 방법 : git clone
* 원격저장소를 로컬저장소와 연결하려면 git remote add origin (주소값) 하면 됨 !
1. git remote add origin (원격저장소 이름/주소)으로 로컬저장소와 연결
2. git fetch 또는 git pull을 이용하여 원격저장소의 내용을 동기화 --> git pull origin master / git fetch origin master
3. fetch를 실행한 경우 git merge origin/master로 병합을 완료
4. git push origin master 를 이용하여 변경된 사항을 원격저장소에 전달
* git remote -v를 하면 지정한 저장소의 이름과 주소를 볼 수 있다 !
* 로컬저장소에서 remote가 추가되었는지 확인해보려면 git remote 또는 git remote -v를 사용하면 된다 !
* 충돌이 나면
1. git pull origin master
2. \cp -f modified.py app.py (예시)
3. git add app.py
4. git commit -m app.py
5. git push origin master
* git 브랜치 이동 : git checkout <이름> => 까먹지 말자 ^^...
* git commit -m "모자장수" => 또 큰따옴표 안씀 ^^ ... 정신차리자 내자신아
< 06 Git 문제집 - 변경점의 일부분만 골라서 커밋하기 > 다시 한번 보기 !
< 06 Git 문제집 - 병합 중 충돌이 발생했을 때 해결하기 > 에서
git commit -m과 git commit -am의 차이가 뭔지 궁금했돠
<git commit -am>은
- -a 옵션은 모든 변경된 파일을 자동으로 스테이징하고 커밋하는 역할을 합니다. 이 옵션을 사용하면 git add 명령어를 사용하지 않아도 되므로 편리합니다. 하지만 새로 생성된 파일은 자동으로 스테이징되지 않으므로 주의해야 합니다.
- -m 옵션은 커밋 메시지를 작성하는 역할을 합니다. 여기서는 “soccer_leagues.py”라는 메시지를 작성하였습니다. 커밋 메시지는 커밋의 목적이나 변경 내용을 간결하게 설명하는 용도로 사용됩니다.
- 따라서 git commit -am "soccer_leagues.py" 명령어는 변경된 파일을 자동으로 스테이징하고 “soccer_leagues.py”라는 커밋 메시지로 커밋하는 역할을 합니다.
< 06 Git 문제집 - 실수로 삭제한 파일 복원하기 > 에서
확인한 기록을 토대로 저장소를 복원할 때에는 git reset --hard "<commit한 내역>을 해주면 된다 !
< 06 Git 문제집 - 여러개의 저장소를 생성하기 > 에서
mkdir hello를 하고 꼭 cd hello로 가서 git init 해주기 !
그리고 다른 디렉토리로 갈때는 cd ../project 이런식으로 해주기 !
* 복습하면서
- CSS에서 li.one을 하면 li 태그중 클래스 one을 선택하겠다는 의미 / li .one (중간에 공백있으면) 부모 자식 지간이다 !
- © 하면
생성 !
- 브라우저 기준 가운데 정렬하려면 margin : 0 auto; 하면 된다 !
* 미리 만들어진 원격 저장소를 관리할 때에는 로컬 저장소를 생성할 필요가 없다 !
따라서 git clone -> git checkout -> 커밋 생성 -> git push 해주면 됨 !
고생해똬 ,,
'TIL' 카테고리의 다른 글
240102 엘리스 SW트랙 2주차 Day7 (0) | 2024.01.02 |
---|---|
240101 엘리스 SW트랙 2주차 Day6 (0) | 2024.01.01 |
231227 엘리스 SW트랙 1주차 Day3 (0) | 2023.12.27 |
231226 엘리스 SW트랙 1주차 Day2 (0) | 2023.12.26 |
231221 프로그래머스 문제풀기 (0) | 2023.12.22 |