Git push-n은 델레란을 운행할 수 있다고 합니다.

6490 단어 Git
안녕하십니까, 선생님.오늘은 제가 좋아하는 Git의 기사입니다.
어려운 글이 없으니 가는 길 가는 사람 마음대로 읽어주세요.
(※ 항상 어려운 것을 쓸 수 없음 (^O^)/)

개요


gitpush 문서를 보고 이런 옵션을 봤어요.
Git - git-push Documentation
-n
--dry-run
Do everything except actually send the updates.dry run ...그래요?
언어의 영향을 보면 실제push를 실행하지 않고 어떤push를 진행할지 확인할 수 있다

실험


실제로 사용해서 델레란 옵션이 기대되는지 확인하고 싶어요.

-n 옵션을 가지고 push를 시도해 보세요.

# ブランチを作成
$ git checkout -b proj/pushingTest

# 適当なファイルを作成
$ echo 'hoge' > hoge.txt

# commit
$ git commit
[proj/pushingTest 760da1e] create hoge.txt
 1 file changed, 1 insertion(+)
 create mode 100644 hoge.txt

# -n 付きで push
$ git push -nu origin proj/pushingTest
To https://github.com/Jpsern/TestRepo.git
 * [new branch]      proj/pushingTest -> proj/pushingTest
Would set upstream of 'proj/pushingTest' to 'proj/pushingTest' of 'origin'
push는 새 브랜치를 만들 것입니다. upstream 브랜치가 이 두 가지 변경 사항을 설정할 것입니다.
github에서 확인했습니다. 물론 이 변경은push가 없습니다.이 밖에 로컬 환경에서 origin/proj/pushing Test를 만들지 않았습니다.
$ git branch -r
  origin/HEAD -> origin/master
  origin/master
나는 이것이 바로 오랫동안 기대했던 델레란의 행동이라고 생각한다.
(참고로 -u 옵션은 --set-upstream 옵션과 동일합니다.)

옵션이 없습니다. push를 시도해 보세요.

$ git push -u origin proj/pushingTest
Enumerating objects: 4, done.
Counting objects: 100% (4/4), done.
Delta compression using up to 4 threads
Compressing objects: 100% (2/2), done.
Writing objects: 100% (3/3), 281 bytes | 70.00 KiB/s, done.
Total 3 (delta 1), reused 0 (delta 0)
remote: Resolving deltas: 100% (1/1), completed with 1 local object.
remote:
remote: Create a pull request for 'proj/pushingTest' on GitHub by visiting:
remote:      https://github.com/Jpsern/TestRepo/pull/new/proj/pushingTest
remote:
To https://github.com/Jpsern/TestRepo.git
 * [new branch]      proj/pushingTest -> proj/pushingTest
Branch 'proj/pushingTest' set up to track remote branch 'proj/pushingTest' from 'origin'.
실제push는 이렇다.자주 보는 녀석이군.

실험2


앞에서 언급한 것은 새 지점을 만드는 것입니다. 만약 간단하게 파일을 업데이트하거나 새 파일을 만들었다면 어떻게 될까요?

띠-n 푸시 해봐.

# 更新
$ echo 'hogehoge' > hoge.txt

# 新規ファイル
$ echo 'newfile' > newfile.txt

# commit
$ git add hoge.txt
$ git commit
[proj/pushingTest 06aabac] update hoge.txt
 1 file changed, 1 insertion(+), 1 deletion(-)

$ git add newfile.txt
$ git commit
[proj/pushingTest c861aa1] create newfile.txt
 1 file changed, 1 insertion(+)
 create mode 100644 newfile.txt

# -n 付きで push
$ git push -n
To https://github.com/Jpsern/TestRepo.git
   760da1e..c861aa1  proj/pushingTest -> proj/pushingTest
제출된 산열과 지점을 표시합니다.
이 일대를 본 것 같다.

옵션이 없습니다. push를 시도해 보세요.

$ git push
Enumerating objects: 8, done.
Counting objects: 100% (8/8), done.
Delta compression using up to 4 threads
Compressing objects: 100% (4/4), done.
Writing objects: 100% (6/6), 544 bytes | 136.00 KiB/s, done.
Total 6 (delta 2), reused 0 (delta 0)
remote: Resolving deltas: 100% (2/2), completed with 1 local object.
To https://github.com/Jpsern/TestRepo.git
   760da1e..c861aa1  proj/pushingTest -> proj/pushingTest
여기도 실제 push 출력이 실려 있습니다.

검증된 Git 버전

  • 1.8.3
  • 2.19.0
  • 버전 1 계열의 이전 환경에서도 사용할 수 있습니다.man git-push 명령의 출력 결과에 따라 OPTIONS 표시줄을 확인하면 -n 옵션의 사용 여부를 알 수 있습니다. 마음에 드는 사람은 사용 환경에서 시도하십시오.

    감상


    어떤 것이push에 걸리는지 대충 잡으면 충분하다.신중파에게는 이런 선택이 즐겁다.가능하다면 여러분도 한번 시도해 보세요.만약 당신이 좋아한다면 개발팀의 운용을 도입할 수도 있습니까?이 가능하다, ~할 수 있다,...
    그리고 델레란 옵션을 사용할 수 있는 Git 명령도 있으니 그 동안 다시 한 번 정리하고 싶습니다.(예정)

    좋은 웹페이지 즐겨찾기