đ¯ git fetch āĻŦāύāĻžāĻŽ git pull: āĻĒāĻžāϰā§āĻĨāĻā§āϝ āĻ āĻŦā§āϝāĻŦāĻšāĻžāϰ â
Git-āĻ āĻāĻžāĻ āĻāϰāĻžāϰ āϏāĻŽā§ āĻāĻŽāĻžāĻĻā§āϰ āĻĒā§āϰāĻžā§āĻ git fetch āĻ git pull āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻāϰāϤ⧠āĻšā§āĨ¤ āĻ
āύā§āĻā§āĻ āĻāĻ āĻĻā§āĻāĻŋ āĻāĻŽāĻžāύā§āĻĄāĻā§ āĻāĻ āĻŽāύ⧠āĻāϰā§āύ, āĻāĻŋāύā§āϤ⧠āĻāĻĻā§āϰ āĻŽāϧā§āϝ⧠āĻāĻāĻāĻŋ āĻā§āϰā§āϤā§āĻŦāĻĒā§āϰā§āĻŖ āĻĒāĻžāϰā§āĻĨāĻā§āϝ āϰā§ā§āĻā§āĨ¤
đ āĻŽā§āϞ āĻĒāĻžāϰā§āĻĨāĻā§āϝ â
| āĻŦāĻŋāώ⧠| git fetch | git pull |
|---|---|---|
| āϰāĻŋāĻŽā§āĻ āϰāĻŋāĻĒā§āĻāĻŋāĻāϰāĻŋ āĻĨā§āĻā§ āĻāĻĒāĻĄā§āĻ āĻāύ⧠| â | â |
| āϞā§āĻāĻžāϞ āĻŦā§āϰāĻžāĻā§āĻā§ āĻĒāϰāĻŋāĻŦāϰā§āϤāύ āĻāύ⧠| â | â |
| āĻŽā§āϝāĻžāύā§ā§āĻžāϞ āĻŽāĻžāϰā§āĻ āĻĻāϰāĻāĻžāϰ | â | â (āĻ āĻā§ āĻŽāĻžāϰā§āĻ āĻāϰā§) |
| āĻāύāĻĢā§āϞāĻŋāĻā§āĻ āĻšā§āϝāĻžāύā§āĻĄāϞāĻŋāĻ āϏāĻšāĻ | â | â |
| āύāĻŋāϰāĻžāĻĒāĻĻ | â | â |
đ§ git fetch āĻā§? â
git fetch āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻāϰ⧠āĻāĻĒāύāĻŋ āϰāĻŋāĻŽā§āĻ āϰāĻŋāĻĒā§āĻāĻŋāĻāϰāĻŋāϰ āϏāĻŦ āĻāĻĒāĻĄā§āĻ āϞā§āĻāĻžāϞ āĻŽā§āĻļāĻŋāύ⧠āĻāύāϤ⧠āĻĒāĻžāϰā§āύ, āĻāĻŋāύā§āϤ⧠āĻāĻĒāύāĻžāϰ āĻāĻžāĻā§āϰ āĻŦā§āϰāĻžāĻā§āĻā§ āĻā§āύ⧠āĻĒāϰāĻŋāĻŦāϰā§āϤāύ āĻšā§ āύāĻžāĨ¤
â āĻāĻĻāĻžāĻšāϰāĻŖ ā§§: āϏāĻžāϧāĻžāϰāĻŖ āĻĢā§āĻ â
git fetchgit fetchāĻāĻāĻŋ āϰāĻŋāĻŽā§āĻ āĻĨā§āĻā§ āϏāĻŦ āĻāĻĒāĻĄā§āĻ āύāĻŋā§ā§ āĻāϏāĻŦā§, āĻāĻŋāύā§āϤ⧠āĻāĻĒāύāĻžāϰ āĻāĻžāϰā§āύā§āĻ āĻŦā§āϰāĻžāĻā§āĻā§ āĻŽāĻžāϰā§āĻ āĻāϰāĻŦā§ āύāĻžāĨ¤
â āĻāĻĻāĻžāĻšāϰāĻŖ ⧍: āύāĻŋāϰā§āĻĻāĻŋāώā§āĻ āϰāĻŋāĻŽā§āĻ āĻĨā§āĻā§ āĻĢā§āĻ â
git fetch origingit fetch originâ āĻāĻĻāĻžāĻšāϰāĻŖ ā§Š: āύāĻŋāϰā§āĻĻāĻŋāώā§āĻ āϰāĻŋāĻŽā§āĻ āĻŦā§āϰāĻžāĻā§āĻ āĻĢā§āĻ â
git fetch origin feature/logingit fetch origin feature/loginâ āĻāĻĻāĻžāĻšāϰāĻŖ ā§Ē: āĻĢā§āĻ āĻāϰāĻžāϰ āĻĒāϰ āĻāĻŽā§āĻĒā§ā§āĻžāϰ āĻāϰāĻž â
git diff main origin/maingit diff main origin/maināĻāϤ⧠āĻāĻĒāύāĻŋ āĻĻā§āĻāϤ⧠āĻĒāĻžāϰāĻŦā§āύ āϰāĻŋāĻŽā§āĻ main āĻ āĻā§ āĻĒāϰāĻŋāĻŦāϰā§āϤāύ āĻāϏā§āĻā§āĨ¤
đ§ git pull āĻā§? â
git pull āĻŽā§āϞāϤ āĻĻā§āĻāĻŋ āĻāĻžāĻ āĻāϰā§:
- āϰāĻŋāĻŽā§āĻ āĻĨā§āĻā§ āĻĢā§āĻ āĻāϰā§
- āϏā§āĻ āĻāĻĒāĻĄā§āĻ āĻāĻĒāύāĻžāϰ āĻāĻžāϰā§āύā§āĻ āĻŦā§āϰāĻžāĻā§āĻā§ āĻŽāĻžāϰā§āĻ āĻāϰ⧠āĻĻā§ā§
â āĻāĻĻāĻžāĻšāϰāĻŖ ā§§: āϏāĻžāϧāĻžāϰāĻŖ āĻĒā§āϞ â
git pullgit pullâ āĻāĻĻāĻžāĻšāϰāĻŖ ⧍: āύāĻŋāϰā§āĻĻāĻŋāώā§āĻ āĻŦā§āϰāĻžāĻā§āĻ āĻĒā§āϞ â
git pull origin developgit pull origin developâ āĻāĻĻāĻžāĻšāϰāĻŖ ā§Š: āĻŽāĻžāϰā§āĻ āύāĻž āĻāϰ⧠āϰāĻŋāĻŦā§āϏ āϏāĻš āĻĒā§āϞ â
git pull --rebasegit pull --rebaseđ§Ē āĻŦāĻžāϏā§āϤāĻŦ āĻāĻĻāĻžāĻšāϰāĻŖ â
āϧāϰā§āύ: â
āĻāĻĒāύāĻŋ main āĻŦā§āϰāĻžāĻā§āĻā§ āĻāĻžāĻ āĻāϰāĻā§āύāĨ¤ āĻāϰ āϰāĻŋāĻŽā§āĻā§ main āĻŦā§āϰāĻžāĻā§āĻā§ āύāϤā§āύ āĻāĻŽāĻŋāĻ āĻāϏā§āĻā§āĨ¤
đš git fetch āĻĻāĻŋā§ā§ āĻāϰāϞā§āĻ â
git fetchgit fetchāĻāϰāĻĒāϰ:
git log HEAD..origin/maingit log HEAD..origin/maināĻĻā§āĻāĻŦā§āύ āϰāĻŋāĻŽā§āĻā§ āĻā§ āύāϤā§āύ āĻāϏā§āĻā§āĨ¤
āϤāĻžāϰāĻĒāϰ āĻāĻžāĻāϞ⧠āĻŽāĻžāϰā§āĻ āĻāϰā§āύ:
git merge origin/maingit merge origin/mainđš git pull āĻĻāĻŋāϞ⧠āϏāϰāĻžāϏāϰāĻŋ: â
git pullgit pullāĻāϤ⧠āĻĢā§āĻ āĻ āĻŽāĻžāϰā§āĻ āĻāĻāϏāĻžāĻĨā§ āĻšā§ā§ āϝāĻžāĻŦā§āĨ¤
đ§ą fetch + merge āĻĒā§āϰāĻā§āϰāĻŋā§āĻž â
# 1. āϰāĻŋāĻŽā§āĻ āĻĨā§āĻā§ āĻāĻĒāĻĄā§āĻ āĻāύāĻž
git fetch origin
# 2. āϤā§āϞāύāĻž āĻāϰ⧠āĻĻā§āĻāĻž
git diff main origin/main
# 3. āĻŽāĻžāϰā§āĻ āĻāϰāĻž
git merge origin/main# 1. āϰāĻŋāĻŽā§āĻ āĻĨā§āĻā§ āĻāĻĒāĻĄā§āĻ āĻāύāĻž
git fetch origin
# 2. āϤā§āϞāύāĻž āĻāϰ⧠āĻĻā§āĻāĻž
git diff main origin/main
# 3. āĻŽāĻžāϰā§āĻ āĻāϰāĻž
git merge origin/mainâ āĻāĻāύ āĻā§āύāĻāĻŋ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻāϰāĻŦā§āύ? â
| āĻāĻĒāύāĻŋ āϝāĻĻāĻŋ āĻāĻžāύ... | āϤāĻžāĻšāϞ⧠āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻāϰā§āύ |
|---|---|
| āϏāĻžāĻŦāϧāĻžāύ⧠āĻāĻžāĻ āĻāϰāϤ⧠| git fetch |
| āϏāϰāĻžāϏāϰāĻŋ āĻāĻĒāĻĄā§āĻ āύāĻŋāϤ⧠| git pull |
| āĻāύāĻĢā§āϞāĻŋāĻā§āĻ āĻā§āĻžāϤ⧠āĻāĻžāύ | git fetch + merge |
| āĻāĻāĻž āĻāĻžāĻ āĻāϰāĻā§āύ | git pull |
| āĻāĻŋāĻŽ āĻĒā§āϰāĻā§āĻā§āĻā§ āĻāĻžāĻ āĻāϰāĻā§āύ | git fetch |
đ§ āĻŽāύ⧠āϰāĻžāĻāĻžāϰ āĻā§āĻļāϞ â
git pull=git fetch+git mergegit fetch= āĻļā§āϧ⧠āĻāĻĒāĻĄā§āĻ āύāĻŋā§ā§ āĻāϏā§, āĻāĻŋāύā§āϤ⧠āĻāĻĒāύāĻžāϰ āĻŦā§āϰāĻžāĻā§āĻā§ āĻāĻŋāĻā§ āĻāϰ⧠āύāĻž
đ§° āĻāĻŋāĻā§ āĻĻāϰāĻāĻžāϰ⧠āĻāĻŽāĻžāύā§āĻĄ â
# āϞā§āĻāĻžāϞ āĻ āϰāĻŋāĻŽā§āĻ āĻŦā§āϰāĻžāĻā§āĻā§āϰ āĻĒāĻžāϰā§āĻĨāĻā§āϝ āĻĻā§āĻāĻž
git log main..origin/main
# āϰāĻŋāĻŽā§āĻ āĻŦā§āϰāĻžāĻā§āĻ āϞāĻŋāϏā§āĻ
git branch -r
# āϏāĻŦ āĻŦā§āϰāĻžāĻā§āĻ (āϞā§āĻāĻžāϞ + āϰāĻŋāĻŽā§āĻ)
git branch -a
# āύāĻŋāϰā§āĻĻāĻŋāώā§āĻ āĻĢāĻžāĻāϞā§āϰ āϰāĻŋāĻŽā§āĻ āĻĒāϰāĻŋāĻŦāϰā§āϤāύ āĻĻā§āĻāĻž
git fetch
git diff origin/main path/to/file.php# āϞā§āĻāĻžāϞ āĻ āϰāĻŋāĻŽā§āĻ āĻŦā§āϰāĻžāĻā§āĻā§āϰ āĻĒāĻžāϰā§āĻĨāĻā§āϝ āĻĻā§āĻāĻž
git log main..origin/main
# āϰāĻŋāĻŽā§āĻ āĻŦā§āϰāĻžāĻā§āĻ āϞāĻŋāϏā§āĻ
git branch -r
# āϏāĻŦ āĻŦā§āϰāĻžāĻā§āĻ (āϞā§āĻāĻžāϞ + āϰāĻŋāĻŽā§āĻ)
git branch -a
# āύāĻŋāϰā§āĻĻāĻŋāώā§āĻ āĻĢāĻžāĻāϞā§āϰ āϰāĻŋāĻŽā§āĻ āĻĒāϰāĻŋāĻŦāϰā§āϤāύ āĻĻā§āĻāĻž
git fetch
git diff origin/main path/to/file.phpđ āĻāĻĒāϏāĻāĻšāĻžāϰ â
- āĻŦā§ āĻĒā§āϰāĻā§āĻā§āĻā§
git fetchāĻŦā§āĻļāĻŋ āύāĻŋāϰāĻžāĻĒāĻĻ - āĻā§āĻ āĻĒā§āϰāĻā§āĻā§āĻā§
git pullāĻĻāĻŋā§ā§ āĻĻā§āϰā§āϤ āĻāĻžāĻ āĻāĻžāϞāĻžāύ⧠āϝāĻžā§ - āĻāύāĻĢā§āϞāĻŋāĻā§āĻ āĻāĻŽ āϰāĻžāĻāϤā§
fetchāĻāϰā§mergeāĻŦāĻžrebaseāĻāϰāĻž āĻāĻžāϞā§