바로 우리가 게으른 사람이기 때문에'정확하고 부정확하며 약간 정확한git의 사용법'
오늘 기사는 여기 있습니다.
이 글의 독자 대상
commiit 메시지 중
wip
fix
가 9할 이상'우주인'을 써서'진지한 사람'으로 읽기9/1 이전에 여름방학 숙제를 마친 사람은 미래인"하루에 1분만 노력한다"고 말할 수 있는 초능력자가 있다.나는 일반인에게만 흥미를 느낀다.
우주인, 미래인, 이세계인, 초능력자가 있다면 가볍게'좋아요'기사를 끄세요.이상!
위원의 올바른 운용은?
세계선 사람들이 참고할 만한 기사가 많이 쓰여 있다.
잠깐만요.
정확한 세상인 분들은 이 기사들을 참고하세요.
자신의 약속이 옳다는 것을 자주 깨닫는 것은 정말 번거롭다.그럼 어떡하지?
게으른 제출 정보, 적당한 제출 요청,
File Changes(243)
이 싫어진다.팀원들의 MP를 줄여도 좋은 것은 아니다.
그러니 아래의 일에 주의하세요.
모두가 함께 일하는 지점은 더럽히지 않는다
남이 보는 것(≈pull 요구)을 깨끗이 하다
적어도 새로운 기능의 추가인지, 오류 수정인지, 팩스인지는 적어야 한다.
● 파일의 시도 10009 & 오류; 3단계"...더 좋은 게 있겠죠!
네.이 단계에 이르러서야 비로소'약속을 줄이고 정보는 적당해야 한다'는 말을 진정으로 체득하게 되었다.요즘 실감이 난다.
그렇긴 하지만 보통 사람들은'그걸 하고 있을 때 여기를 신경 쓰고 여기도 고쳤다'는 경우가 많다.
설치하는 과정에서 귀찮았어요. "아, 이건 아니야. 다른 지점을 잘라. 그때로 돌아가서 여기서 지점을 잘라..."이런 건 너무 귀찮아요.너무 귀찮아요.
예를 들어 슬랙에 보내기 전에 잘못이 있는지 없는지를 엄격하게 다듬나요?설마.
아무튼 일단 Enter 키를 돌려!그럼 나중에 Edit하면 되겠네요.앞으로 안 봤으면 좋겠어요.
나중에 깨끗이 하면 돼.
Version 관리가 난폭하다면'이후 무슨 일이 일어났는지 뒤돌아보기 위해서','이후 과거의 편집을 바꾸기 위해서'다.
그래서 최초의 커미션은 적당했다.
실장 과정에서 고치고 싶은 부분을 고치고 마음껏 노력해 주세요.
그러나 자신의 업무 지점으로남에게 폐만 끼치지 마라.
이렇게 할 수 있었으면 좋겠어요.
● 기능 추가를 위해...
6exd364
'나중에 예뻐질 거야'를 위한 다양한 일들.
모든 용례가 편리한git 명령
그러면 실제로 한 번 제출한 내용을 예쁘게 하기 위해 약간의 다른 용례의git 명령을 사용했다.
과거의 커미션을 정리하고 싶어요.
그렇다면, 귀사는 현재 업무 중에 대량의 wip 약속을 하고 있습니다.
$ git branch
master
* wip-branch
$ git log
commit 035a324a7e9e03822be202536a89d3bd27451c95
Author: kyoh86 <[email protected]>
Date: Tue Nov 22 08:15:42 2016 +0900
wip まだゴミあった
commit d387cf8dd21b297d9b8c427db8b7007fe9dee108
Author: kyoh86 <[email protected]>
Date: Tue Nov 22 07:57:33 2016 +0900
wip バグ直し
commit 101f652a9dd51a29269fa818b91d2fac8a2e3d0c
Author: kyoh86 <[email protected]>
Date: Tue Nov 22 07:51:02 2016 +0900
wip できた?
commit 59be7f5930f6d3fe7d3cda89ddb1dd252d170b77
Author: kyoh86 <[email protected]>
Date: Tue Nov 22 06:53:42 2016 +0900
wop ごみ掃除
commit df735e2e2b31df94d73ad134fa02692996e3ad9d
Author: kyoh86 <[email protected]>
Date: Tue Nov 22 05:09:27 2016 +0900
functions 再整理 (#42)
df735e2
(functions 재정리(#42) 이후 제출은 모두 wip입니다.그렇게 복잡한 상황은 아니야.다만,'쓰레기 청소'위원 2명은 "다 했느냐?"오류 수정과 마찬가지로 작업 과정을 제출했습니다.
원래'쓰레기 청소'는 하나의 약속이고'청소 기능의 실현'은 하나의 약속이다. 이것이 가장 좋다.
그래서
git rebase -i
제출품을 다시 배열하여 몇 개로 정리했다.$ git rebase -i df735e2e2b31df94d73ad134fa02692996e3ad9d # ← "functions 再整理 (#42)" のコミットハッシュ
pick 59be7f5 wop ごみ掃除
pick 101f652 wip できた?
pick d387cf8 wip バグ直し
pick 035a324 wip まだゴミあった
# Rebase 326fc9f..0d4a808 onto d286baa
#
# Commands:
# p, pick = use commit
# r, reword = use commit, but edit the commit message
# e, edit = use commit, but stop for amending
# s, squash = use commit, but meld into previous commit
# f, fixup = like "squash", but discard this commit's log message
# x, exec = run command (the rest of the line) using shell
#
# If you remove a line here THAT COMMIT WILL BE LOST.
# However, if you remove everything, the rebase will be aborted.
#
편집기(기본값vim)가 열리면 설명에 따라 편집여기, 아래처럼 이렇게 만져보세요.
reword 59be7f5 wop ごみ掃除
squash 035a324 wip まだゴミあった
reword 101f652 wip できた?
squash d387cf8 wip バグ直し
결과git log는 다음과 같습니다.commit 4641774bde2c85eaa3ce905e1e6d9b4e1cebf60a
Author: kyoh86 <[email protected]>
Date: Tue Nov 22 07:51:02 2016 +0900
◯◯の実装
commit 398acba7019ca7f7d915b55711c9ac53d7b22d3e
Author: kyoh86 <[email protected]>
Date: Tue Nov 22 06:53:42 2016 +0900
リファクタリング:使用していない✕✕パッケージを削除
commit df735e2e2b31df94d73ad134fa02692996e3ad9d
Author: kyoh86 <[email protected]>
Date: Tue Nov 22 05:09:27 2016 +0900
functions 再整理 (#42)
기쁘고 축하할 만하다.git rebase -i
의 편집 상세 정보는 많은 사람들이 다른 문장에서 총결하였다.과거의 약속을 다시 시작하고 싶어요.
그럼, 귀사는 현재 또 대량의 와이프 커미션을 가지고 있습니다.
$ git log
commit eb8b87a08098fc2fd7df9805970dd197ab850447
Author: Kyoichiro Yamada <[email protected]>
Date: Tue Sep 27 21:52:57 2016 +0900
fix
commit 61a476ba015556e167a46c3e29fcada60c510e9b
Author: Kyoichiro Yamada <[email protected]>
Date: Tue Sep 27 21:48:03 2016 +0900
fix
commit c2df90e8bc50446b736249ecaaac89f2c4c4dc9e
Author: Kyoichiro Yamada <[email protected]>
Date: Tue Sep 27 21:44:01 2016 +0900
fix
commit 37d070c710f4df384686a27a99b9a2e9dcf84610
Author: Kyoichiro Yamada <[email protected]>
Date: Tue Sep 27 21:41:06 2016 +0900
fix
commit b3293ccd4420938941843aa70d4b85d5ac4f3acc
Author: Kyoichiro Yamada <[email protected]>
Date: Tue Sep 27 21:40:45 2016 +0900
fix
commit 490e1c0c46b67594aee31e38fcb28076ed6c1fdb
Author: Kyoichiro Yamada <[email protected]>
Date: Sun Sep 25 16:35:56 2016 +0900
fix
commit df735e2e2b31df94d73ad134fa02692996e3ad9d
Author: kyoh86 <[email protected]>
Date: Tue Nov 22 05:09:27 2016 +0900
◯◯機能の実装 (#43)
그럼, 답장할까요? 그렇게 생각하지만 이번에 어떤 위원이 무슨 짓을 했는지 아무 말도 하지 않았어요.때리고 싶은 거예요?내가 때려줄게.
git reset
에서 되돌려받을 과거 제출을 지정합니다.이 목적에 있어서 틀린 것을 사용하지 않도록 주의하십시오
--hard
.$ git reset df735e2e2b31df94d73ad134fa02692996e3ad9d # ← "◯◯機能の実装 (#43)" のコミットハッシュ
이것은 과거에 자신의 어리석은 약속이 없었다는 것을 의미한다.그러나
--hard
옵션을 사용하지 않았기 때문에 파일의 변경은 보류되었다.나머지는 정확한 commiit를 생산하는 것이다.
$ git add foo.go
$ git add foo_test.go
$ git commit -m '△△機能の実装'
$
$ git rm bar.go
$ git rm -r baz/
$ git commit -m '□□機能の廃止'
같은 서류에 다른 목적의 변경이 섞여 있다!
상기
git reset
가 필요한 상황에서 엄마입니다.만약 단일한 서류에 서로 다른 목적의 변경이 섞여 있다면 어떻게 해야 좋을까.
git add
에는 -p
옵션이 있습니다.partial
의p
죠.실행 후 대상 파일의 diff를 표시하고 필요한 변경 사항만 선택합니다
add
.자세한 내용은 여기를 참고하세요.
지점 이름에 wip이 있지...
누군가가 자신의 업무 지점에서 지점을 다시 자르는 비극을 최대한 피하기 위해
업무 지점 등에도
wip-xxxxx
처럼 명확한 이름을 지어준다.(혹은 덧붙이는 것이 좋다)그러나 일단 홍보를 제기하는 단계에 이르면 지점명
wip-xxxxx
은 통제하지 않는다."이미 특정 새로운 조건을 충족하는 브런치"라며 이름을 바꿔달라.
$ git branch -M feature-xxx
$ git push -u origin feature-xxx
# 作業ブランチを既にリモートにプッシュしていた場合、リモートのゴミも残さずキレイにしましょう。
$ git push origin :wip-xxxxx
이 명령을 능숙하게 사용할 수 있다면 업무 중에 즐겁게 제출할 수 있다끝나고'예뻐질 때'도 실수가 적어 쉽게 도전할 수 있다.
더 잘 일하기 위해서.
tig
git log
와 git add -p
는 편리하지만 가려운 데가 곳곳에 닿지 않는다.를 사용하면 그 근처가 편해요.
상세한 상황은 이곳의 보도를 참고하시오.
tig
또한 이 글에는 언급되지 않았지만'tig 화면에서 선택한 제출한 해시 복사'키bind를 설정하면
특정한 제출이나 리베이스로 거슬러 올라가면 수월해진다.
~/.tigrc
# main viewの左端にコミットIDを表示する
set main-view = id:width=12 date author commit-title:graph=yes,refs=yes
# デフォルト
# set main-view = date author commit-title:graph=yes,refs=yes
# 水平分割したウィンドウの下画面サイズを % で指定(行数指定も可)
set split-view-height = 80%
# Shift-Cで、選択行のコミットのハッシュをクリップボードにコピー(macOS用)
bind main C !@git pbcopy %(commit)
작업용 분기 전환
자기가 쓰는 일의 가닥을 용도에 맞게 짜다.
그래서 무엇을 위해 준비한 지점인지 잊기 쉽다.
fzf
하고 peco
사용하세요.참조 가능이것만을 위한 졸작인 분기 명세서를 쓴 당신https://fithub.com/junegunn/fzf/wiki/examples#git을 사용할 수도 있습니다.
function/checkout-git-branch.zsh
function checkout-git-branch() {
git-branches --color --exclude-current \
| fzf \
| awk '{print $2}' \
| xargs -r git checkout
}
autoload -Uz checkout-git-branch
bindkey '^xgb' checkout-git-branch
bindkey '^xg^b' checkout-git-branch
bindkey '^x^gb' checkout-git-branch
bindkey '^x^g^b' checkout-git-branch
끝맺다
어때?
진지한 사람, 진지한 사람이 읽으면 쓰러지거나 욕하는 소리가 나는 기사다.
끊임없이 메일에 매진하고 정중하게 메시지를 쓸 순 없어... 나 같은 사람을 도울 수 있다면 좋겠다.
디버깅을 정확하게 활용하는 것이 가장 좋다고 확신할 수 있다.
팀원 중 엄격한 사람이 있고 진지한 사람이 있다면 고의로 잘못된 길을 걷지 말고 모두가 보조를 맞추어'올바르게 운용'하도록 주의해야 한다.
Reference
이 문제에 관하여(바로 우리가 게으른 사람이기 때문에'정확하고 부정확하며 약간 정확한git의 사용법'), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://zenn.dev/kyoh86/articles/qiita-600b9477d04e0a9a1e70텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)