IT 공부 41

[Git & Github] 18. Git의 이면 - 해싱(Hashing)과 객체

Important ● 로컬 설정 파일Nice To Have ● refs 디렉토리 ● HEAD ● 해싱 함수의 기초 ● 깃 오브젝트 로컬 설정 파일 깃 설정은 글로벌과 로컬 두 가지 방식으로 설정 할 수 있다.글로벌로 설정할 경우 모든 깃 repository에 동작하는 설정을 할 수 있으며로컬로 설정할 경우 설정한 해당 repository에서만 적용되는 설정을 적용할 수 있다. 해당 챕터에서는 로컬에서 간단한 설정 조작만 맛 볼 예정이다.로컬 설정은 config 파일을 직접 수정하거나 명령어를 통해서 깃의 설정을 바꿀 수 있다. config 파일 수정 CLI 환경에서 config 수정 refs/이 폴더 안에는 heads, tags 등의 하위 폴더가 있다.heads 폴더는 저장..

[Git & Github] 17. 히스토리상의 중요한 순간에 표시하기

Important ● git tag 이해하기 ● 태그 보기 ● 태그 생성 및 푸시Nice To Have ● Semantic versioning ● 태그 비교/삭제/옮기기 깃 태그는 특정 커밋에 추가하는 일종의 라벨이다. 주로 릴리즈 버전을 표시하는 용도로 사용된다.커밋이 추가되면 같이 이동하는 브랜치 참조와 다르게 처음 지정된 커밋을 계속 참조한다. * 태그의 두 종류 *일반 태그(lightweight) : 특정 순간에 이름을 붙인다.주석 태그(annotated) : 태그 메시지, 생성자 이름, 이메일, 날짜 등을 포함한다. 큰 프로젝트에서는 주석 태그를 선호하는 편이다. 시멘틱 버저닝 (Semantic versioning)버전 번호를 매기는 일종의 규칙이다.버전명은 숫자 세..

[Git & Github] 16-2. git push -f

git push -f (git push --force)로컬 브랜치의 변경 사항을 강제로 원격 저장소에 덮어쓰는 명령어이다.보통은 로컬 브랜치의 커밋 히스토리를 변경(예: rebase, amend) 한 후에 사용된다. ⚠️ 왜 "강제(push -f)"가 필요한가? Git은 기본적으로 push 할 때, 원격 브랜치가 로컬 브랜치의 조상이 아닐 경우 push를 거부한다.(= 히스토리가 "앞으로"만 가야지, "되돌리면" 위험하다고 보기 때문이다.) 하지만 git commit --amend, git rebase, git reset 같은 작업은 커밋 해시를 변경하므로 push 하려면 -f 옵션이 필요하다. 📘 예시: amend 후 push -f 1. 이미 커밋을 pushgit commit -m "Fix bug..

[Git & Github] 16-1. git commit --amend

🔧 git commit --amend 가장 마지막 커밋을 수정하는 명령어 (가장 최근 커밋)커밋 메시지, 내용, 또는 둘 다를 덮어쓰기 방식으로 수정실수로 커밋 메시지를 잘못 썻거나, 파일을 빠뜨렸을 때 유용하다 📘 예시 1: 커밋 메시지만 수정 1. 기존 커밋 확인git log --oneline -1> e1a2b3c Fix login bug→ 실제로는 로그인 버그가 아니라 "로그인 UI 수정"이었을 때 2. 커밋 메시지 수정git commit --amend● 편집기가 열리면 메시지를 수정Fix login UI layout● 저장하고 종료하면 커밋 메시지가 업데이트된다. 📘 예시 2: 빠뜨린 파일을 추가하고 커밋 수정 1. 파일을 농친 경우git add missing-file.jsgit comm..

[Git & Github] 16. Interactive Rebase를 사용하여 히스토리 삭제하기

Nice To Have ● 커밋 재작성 ● 커밋 수정 및 스쿼싱 (결합) ● 커밋 삭제 rebase -i 명령어를 통해서 이미 존재하는 커밋 이력을 편집, 조작할 수 있다. reword, edit 등 수정사항이 여러개라면 각 커밋마다 작업을 순차적으로 해주어야 한다.변경 작업이 완료되면 커밋 해시가 바뀌게 된다. 즉, 작업 대상의 커밋들이 모두 재생성 되었다는 얘기이다.추가로 특정 브랜치를 지정하지 않고 현재 HEAD가 위치한 브랜치를 기점으로 리베이스를 하게된다. git rebase -i [commit-hash] pick : 커밋 유지reword : 커밋 유지. 단, 커밋 메시지만 재작성edit : 작업과 커밋 메시지 모두 재작성fixup : 이전 커밋과 병합. 단, 커밋 메시지는 병..

PC 클립보드 - 복사 기록 +: 클립보드 기록을 위한 최고의 도구

https://chromewebstore.google.com/detail/%EB%B3%B5%EC%82%AC-%EA%B8%B0%EB%A1%9D-+-%ED%81%B4%EB%A6%BD%EB%B3%B4%EB%93%9C-%EA%B8%B0%EB%A1%9D%EC%9D%84-%EC%9C%84%ED%95%9C-%EC%B5%9C%EA%B3%A0%EC%9D%98-%EB%8F%84/kjlbbjicboihbikbjbbmkimccoeccoon?hl=ko 복사 기록 +: 클립보드 기록을 위한 최고의 도구 - Chrome 웹 스토어복사 기록, 클립보드 기록, 복사 기록 관리. 무료, 쉽게. 자동으로 저장, 저장, 복사된 텍스트 수집. 생산성 향상, 시간 절약.chromewebstore.google.com클립보드용으로 사용하기 좋다...

스프레드시트 스크립트 확장 프로그램 - Black Apps Script

https://chromewebstore.google.com/detail/black-apps-script/lobpcflajoikohefjjdndofbfikadpfb?hl=ko Black Apps Script - Chrome 웹 스토어This extension brings new functionality to the Google Apps Script Monaco Editorchromewebstore.google.com자바스크립트로 스프레드시트를 조작하게 해주는 확장 프로그램이다.매크로를 만들어 단축키로 등록할 수도 있으며 반복 작업이 많이 발생하는 작업에 대해서도 프로그램을 만들어 해결할 수 있다.

찾기 및 바꾸기 기능 - Find & Replace for Text Editing

https://chromewebstore.google.com/detail/find-replace-for-text-edi/mogefjlnnldblkakpbakdaffphhjfjba?hl=ko Find & Replace for Text Editing - Chrome 웹 스토어Adds search & replace tool for input fields and editable text content.chromewebstore.google.com 블로그에서 특정 단어에 대해 일괄로 변경할 때 사용하면 편하다.사용해보니 마우스 커서가 있는 영역에 대해서 단어를 인식 하는 것 같다.