한국어

GIT — Git

GIT Git 저장소는 폴더처럼 탐색합니다. 변경된 파일, 브랜치, 이력을 볼 수 있습니다.

저장소 열기

표시줄의 GIT 버튼은 즐겨찾는 프로젝트로 이동하고, 오른쪽 클릭하면 목록이 나옵니다. 알려진 저장소, “커밋”, “이력…”, 브랜치, “스태시…”와 “스태시”, “태그…”, “원격 저장소”입니다. 아직 저장소가 아닌 디스크의 폴더에서는 “여기에 저장소 복제…”가 제안됩니다. 프로젝트는 들어가는 것만으로 저절로 추가되고, 폴더가 사라진 프로젝트는 목록에서 지워집니다. 단, 디스크 자체가 없는 경우는 예외로, 뽑아 둔 USB 메모리 때문에 지워지는 것은 없습니다.

폴더의 상태

각 줄은 자기 색상을 갖습니다. 충돌, 추적되지 않음, 수정됨, 스테이징됨, 무시됨. git은 파일을 인덱스와 작업 사본이라는 두 축으로 설명하는데, 한 줄로는 둘을 다 보여 줄 수 없습니다. 그래서 색을 결정하는 것은 앞으로 해야 할 일입니다. 경로 표시줄에는 현재 브랜치가 표시됩니다.

스테이징과 커밋

“커밋”은 변경 사항 뷰를 엽니다. 한 줄에 파일 하나이고, 추적됨 열이 git이 아는 내용을 알려 줍니다. 줄은 다른 곳과 같은 방식으로 고릅니다. 클릭, Ctrl+클릭, Shift+클릭입니다. 아래쪽에 메시지를 쓰고 커밋을 누르면 선택한 것이 커밋됩니다. 선택한 것이 없으면 아무것도 커밋되지 않으며 버튼이 그렇다고 알려 줍니다.

커밋 막대의 추적 안 됨 단추가 git이 추적하지 않는 것을 숨깁니다. 버릴 파일로 가득한 폴더도 커밋하려는 두 파일을 가리지 않고, Ctrl+A도 더 이상 함께 선택하지 않습니다. 끄면 숨긴 개수를 알려 줍니다.

저장소의 변경 사항 뷰: 파일 세 개와 그 추적 상태, 아래쪽의 커밋 표시줄.
저장소의 변경 사항과 커밋 표시줄: 메시지, 선택한 항목, 버튼.

차이 보기

“차이 보기”는 작업 사본, 인덱스(스테이징됨), 커밋 사이의 diff를 블록 단위로 엽니다. 이전과 이후가 거기에 표시됩니다. 바이너리 파일은 의미 없는 문자를 보여 주는 대신 바이너리라고 알려 줍니다.

동작

브랜치와 이력

브랜치 만들기, 전환, 병합. 항목에 브랜치 이름이 표시되며 병합할 것이 없습니다. 이미 최신입니다 또는 병합이 중단되었습니다. 충돌하는 파일이 있습니다라고 답합니다. “이력…”은 커밋을 나열합니다. 짧은 해시, 제목, 작성자, 날짜입니다. 왼쪽 여백에는 그래프가 그려지고 줄마다 자기 선이 있으며, 병합은 이웃한 열로 선을 긋습니다. 더블클릭하면 커밋의 상세가 열립니다. 전체 메시지와 변경한 파일입니다.

저장소의 이력: 커밋 네 개, 제목, 작성자, 그리고 여백에 그려진 브랜치 그래프.
이력과 여백의 그래프: 같은 루트에서 갈라진 두 브랜치와 이를 합치는 병합.

머지 리퀘스트 트리

GIT 버튼 메뉴의 머지 리퀘스트 트리…는 원격 저장소가 가리키는 GitLab 프로젝트의 열린 MR을 그립니다. 각 MR은 시작한 브랜치 아래에 목차처럼 한 단계씩 들여쓰기되어 놓입니다. 단계는 승인 순서를 알려 주고, 카드를 클릭하면 브라우저에서 MR이 열립니다.

저장소의 머지 리퀘스트 트리: main, 들여쓴 MR들, 서로 갈라져 나온 세 MR의 사슬
!31은 !28에서, !35는 !31에서 갈라져 나왔습니다. 각 MR은 자신이 담은 커밋의 MR 아래에 ‘다음’과 ‘대상 main’ 표시와 함께 놓입니다. 오른쪽 버튼으로 브랜치를 체크아웃하고, 체크 표시는 현재 있는 main을 나타냅니다.

원격 저장소와 주고받기

“풀”과 “푸시”는 라벨 옆에 대상 커밋 수가 함께 표시됩니다. 0이면 표시하지 않습니다. 맞은편에 아직 없는 브랜치는 업스트림과 함께 전송됩니다. 원격 저장소는 같은 메뉴에서 등록하고 제거합니다. 서버가 인증을 요구하면 Meneaufile도 아무 말 없이 멈추는 대신 그것을 요청합니다.

치워 두기

“스태시…”는 진행 중인 작업을 커밋하지 않고 치워 두며 설명은 선택 사항입니다. “스태시” — 치워 둔 작업 — 는 대기 중인 것을 나열하고, 거기서 다시 꺼내 쓰거나 버립니다. “태그…”도 같은 방식으로 추가하고 제거합니다.

이 줄을 쓴 사람

파일 메뉴의 “줄 기록”은 각 줄을 커밋과 작성자에게 연결합니다. 뜻밖의 줄을 만났을 때 던지는 질문이며 커밋 목록으로는 답할 수 없습니다.

충돌

충돌한 파일은 여러 버전으로 열립니다. 공통 버전, 우리 쪽, 저쪽, 그리고 직접 만드는 결과입니다. “모두 가져오기”는 한쪽 전체를 결과에 넣고, “해결”은 저장하며 파일은 충돌 분류에서 빠집니다.

복제

폴더에서: 주소(https://… 또는 git@host:org/repo.git), 만들 폴더 이름, 그리고 전체 이력 또는 얕은 이력(최근 N개 커밋).

번들

.bundle 파일은 하나의 파일로 묶은 Git 저장소입니다. 서버 없이 프로젝트를 USB 메모리에 담아 가거나 다른 사람에게 건넬 수 있습니다. 더블클릭하면 담긴 내용, 즉 브랜치와 태그를 보여 주고, 여기에 복제…는 그 바로 옆에 네트워크 없이 일반 저장소를 만듭니다. 저장소 안에서는 GIT 메뉴의 번들 만들기…가 저장소 전체를 다른 뷰의 폴더에 묶어 넣습니다.

git이 없을 때

Meneaufile은 시스템의 git을 호출합니다. 없거나 PATH에 없으면 이유 없이 실패하는 대신 그렇다고 알려 줍니다.

Meneaufile 설명서, 한국어판.