Skip to content

🔄 git pull āĻ•āĻŽāĻžāĻ¨ā§āĻĄ ​

git pull āĻ•āĻŽāĻžāĻ¨ā§āĻĄ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰāĻž āĻšā§Ÿ āϰāĻŋāĻŽā§‹āϟ āϰāĻŋāĻĒā§‹āϜāĻŋāϟāϰāĻŋ āĻĨ⧇āϕ⧇ āϏāĻ°ā§āĻŦāĻļ⧇āώ āφāĻĒāĻĄā§‡āϟāϗ⧁āϞ⧋ āϞ⧋āĻ•āĻžāϞ āϰāĻŋāĻĒā§‹āϜāĻŋāϟāϰāĻŋāϤ⧇ āφāύāĻžāϰ āϜāĻ¨ā§āϝāĨ¤ āĻāϟāĻŋ āĻŽā§‚āϞāϤ āĻĻ⧁āχāϟāĻŋ āϧāĻžāĻĒ āĻāĻ•āϏāĻžāĻĨ⧇ āĻ•āϰ⧇:

  1. git fetch – āϰāĻŋāĻŽā§‹āϟ āϰāĻŋāĻĒā§‹āϜāĻŋāϟāϰāĻŋāϰ āφāĻĒāĻĄā§‡āϟ āφāύ⧇āĨ¤
  2. git merge – āĻĢ⧇āϚ āĻ•āϰāĻž āφāĻĒāĻĄā§‡āϟ āϞ⧋āĻ•āĻžāϞ āĻŦā§āϰāĻžāĻžā§āĻšā§‡ āĻŽāĻžāĻ°ā§āϜ āĻ•āϰ⧇āĨ¤

📌 git pull āĻ•āĻŽāĻžāĻ¨ā§āĻĄā§‡āϰ āϏāĻžāϧāĻžāϰāĻŖ āĻ—āĻ āύ: ​

bash
git pull <remote> <branch>
git pull <remote> <branch>
  • remote: āϏāĻžāϧāĻžāϰāĻŖāϤ origin āĻšā§ŸāĨ¤
  • branch: āφāĻĒāύāĻŋ āϝ⧇āχ āĻŦā§āϰāĻžāĻžā§āϚ āĻĨ⧇āϕ⧇ āφāĻĒāĻĄā§‡āϟ āφāύāϤ⧇ āϚāĻžāύ, āϝ⧇āĻŽāύ main, master, develop āχāĻ¤ā§āϝāĻžāĻĻāĻŋāĨ¤

✅ āϏāĻžāϧāĻžāϰāĻŖ āωāĻĻāĻžāĻšāϰāĻŖ: ​

1. āĻŦāĻ°ā§āϤāĻŽāĻžāύ āĻŦā§āϰāĻžāĻžā§āĻšā§‡ āϰāĻŋāĻŽā§‹āϟ āĻĨ⧇āϕ⧇ āφāĻĒāĻĄā§‡āϟ āφāύāϤ⧇: ​

bash
git pull
git pull

âžĄī¸ āĻāϟāĻŋ origin āϰāĻŋāĻŽā§‹āϟ āĻĨ⧇āϕ⧇ āĻŦāĻ°ā§āϤāĻŽāĻžāύ āĻŦā§āϰāĻžāĻžā§āĻšā§‡āϰ āϏāĻ°ā§āĻŦāĻļ⧇āώ āĻĒāϰāĻŋāĻŦāĻ°ā§āϤāύ āφāύāĻŦ⧇ āĻāĻŦāĻ‚ āĻŽāĻžāĻ°ā§āϜ āĻ•āϰāĻŦ⧇āĨ¤

2. āύāĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āϟ āϰāĻŋāĻŽā§‹āϟ āĻ“ āĻŦā§āϰāĻžāĻžā§āϚ āĻĨ⧇āϕ⧇ āφāĻĒāĻĄā§‡āϟ āφāύāϤ⧇: ​

bash
git pull origin main
git pull origin main

âžĄī¸ origin āĻĨ⧇āϕ⧇ main āĻŦā§āϰāĻžāĻžā§āϚ āĻĢ⧇āϚ āĻāĻŦāĻ‚ āĻŽāĻžāĻ°ā§āϜ āĻ•āϰāĻŦ⧇āĨ¤

3. git pull āĻ•āϰāĻžāϰ āφāϗ⧇ āĻĒāϰāĻŋāĻŦāĻ°ā§āϤāύ āϏ⧇āĻ­ āύāĻž āĻ•āϰāϞ⧇ āϕ⧀ āĻšā§Ÿ? ​

āφāĻĒāύāĻžāϰ āϞ⧋āĻ•āĻžāϞ āϰāĻŋāĻĒā§‹āϜāĻŋāϟāϰāĻŋāϤ⧇ āϝāĻĻāĻŋ āϕ⧋āύ⧋ āĻ•āĻŽāĻŋāϟ āύāĻž āĻ•āϰāĻž āĻĒāϰāĻŋāĻŦāĻ°ā§āϤāύ (uncommitted changes) āĻĨāĻžāϕ⧇, āϤāĻŦ⧇ git pull āĻ•āϰāĻžāϰ āϏāĻŽā§Ÿ āĻŽāĻžāĻ°ā§āϜ āĻ•āύāĻĢā§āϞāĻŋāĻ•ā§āϟ āĻŦāĻž āĻāϰāϰ āφāϏāϤ⧇ āĻĒāĻžāϰ⧇:

bash
error: Your local changes to the following files would be overwritten by merge:
error: Your local changes to the following files would be overwritten by merge:

âžĄī¸ āϏāĻŽāĻžāϧāĻžāύ: āĻĒā§āϰāĻĨāĻŽā§‡ āĻšā§‡āĻžā§āϜāϗ⧁āϞ⧋ commit āĻ•āϰ⧁āύ āĻ…āĻĨāĻŦāĻž stash āĻ•āϰ⧁āύ:

bash
git stash
git pull
git stash pop
git stash
git pull
git stash pop

4. āĻ•āύāĻĢā§āϞāĻŋāĻ•ā§āϟ āĻā§œāĻžāϤ⧇ āϰāĻŋāĻŦ⧇āχāϏ āĻĻāĻŋā§Ÿā§‡ pull: ​

bash
git pull --rebase
git pull --rebase

âžĄī¸ āĻāϟāĻŋ āĻŽāĻžāĻ°ā§āϜ āύāĻž āĻ•āϰ⧇ rebase āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰ⧇ āϞ⧋āĻ•āĻžāϞ āĻ•āĻŽāĻŋāϟāϗ⧁āϞ⧋āϕ⧇ āϰāĻŋāĻŽā§‹āϟ āφāĻĒāĻĄā§‡āĻŸā§‡āϰ āωāĻĒāϰ āĻŦāϏāĻžā§ŸāĨ¤

5. āĻļ⧁āϧ⧁ āĻĢ⧇āϚ āĻ•āϰāĻž (pull āύ⧟): ​

bash
git fetch origin
git fetch origin

âžĄī¸ āĻāϟāĻŋ āĻļ⧁āϧ⧁ āφāĻĒāĻĄā§‡āϟ āύāĻŋā§Ÿā§‡ āφāϏāĻŦ⧇, āĻ•āĻŋāĻ¨ā§āϤ⧁ āϞ⧋āĻ•āĻžāϞ āĻŦā§āϰāĻžāĻžā§āĻšā§‡ āĻŽāĻžāĻ°ā§āϜ āĻ•āϰāĻŦ⧇ āύāĻžāĨ¤

6. āύāĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āϟ āĻŦā§āϰāĻžāĻžā§āϚ āĻ…āĻ¨ā§āϝ āϞ⧋āĻ•āĻžāϞ āĻŦā§āϰāĻžāĻžā§āĻšā§‡ āĻŽāĻžāĻ°ā§āϜ āĻ•āϰāϤ⧇: ​

bash
git fetch origin
git checkout my-feature
git merge origin/main
git fetch origin
git checkout my-feature
git merge origin/main

âžĄī¸ main āĻŦā§āϰāĻžāĻžā§āĻšā§‡āϰ āφāĻĒāĻĄā§‡āϟ my-feature āĻŦā§āϰāĻžāĻžā§āĻšā§‡ āĻŽāĻžāĻ°ā§āϜ āĻ•āϰāĻž āĻšāϞ⧋āĨ¤

7. āĻĄāĻŋāĻĢāĻ˛ā§āϟ Pull behavior āĻĒāϰāĻŋāĻŦāĻ°ā§āϤāύ āĻ•āϰāĻž: ​

bash
git config pull.rebase true
git config pull.rebase true

âžĄī¸ āϏāĻŦāϏāĻŽā§Ÿ git pull āĻ•āϰāϞ⧇ --rebase āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻšāĻŦ⧇āĨ¤

8. āĻ•āύāĻĢāĻŋāĻ—āĻžāϰ⧇āĻļāύ āĻ›āĻžā§œāĻž āϏāϰāĻžāϏāϰāĻŋ rebase āĻĻāĻŋā§Ÿā§‡ pull: ​

bash
git pull --rebase origin main
git pull --rebase origin main

âžĄī¸ āĻāϟāĻŋ āϰāĻŋāĻŦ⧇āχāϏ āĻ•āϰ⧇ main āĻŦā§āϰāĻžāĻžā§āϚ āφāĻĒāĻĄā§‡āϟ āĻ•āϰāĻŦ⧇āĨ¤

🧨 āϏāĻŽā§āĻ­āĻžāĻŦā§āϝ āϏāĻŽāĻ¸ā§āϝāĻž āĻ“ āϏāĻŽāĻžāϧāĻžāύ ​

āϏāĻŽāĻ¸ā§āϝāĻžāĻ•āĻžāϰāĻŖāϏāĻŽāĻžāϧāĻžāύ
Local changes would be overwrittenāφāĻĒāύāĻŋ āϕ⧋āύ⧋ āĻĢāĻžāχāϞ āĻĒāϰāĻŋāĻŦāĻ°ā§āϤāύ āĻ•āϰ⧇āϛ⧇āύ āĻ•āĻŋāĻ¨ā§āϤ⧁ commit āĻ•āϰ⧇āύāύāĻŋgit stash āĻĻāĻŋā§Ÿā§‡ āĻšā§‡āĻžā§āϜāϗ⧁āϞ⧋ āϏāĻ‚āϰāĻ•ā§āώāĻŖ āĻ•āϰ⧁āύ
Merge conflictāϞ⧋āĻ•āĻžāϞ āĻ“ āϰāĻŋāĻŽā§‹āϟ āĻĢāĻžāχāϞ⧇ āĻāĻ•āχ āϞāĻžāχāύ⧇ āĻĒāϰāĻŋāĻŦāĻ°ā§āϤāύ āφāϛ⧇āĻ•āύāĻĢā§āϞāĻŋāĻ•ā§āϟ āĻŽā§āϝāĻžāύ⧁⧟āĻžāϞāĻŋ āĻ āĻŋāĻ• āĻ•āϰ⧇ git commit āĻ•āϰ⧁āύ
Remote branch not foundāϭ⧁āϞ āĻŦā§āϰāĻžāĻžā§āϚ āύāĻžāĻŽ āĻĻāĻŋā§Ÿā§‡āϛ⧇āύgit branch -r āĻĻāĻŋā§Ÿā§‡ āϰāĻŋāĻŽā§‹āϟ āĻŦā§āϰāĻžāĻžā§āϚ āϞāĻŋāĻ¸ā§āϟ āĻĻ⧇āϖ⧁āύ

🔍 āϰāĻŋāĻŽā§‹āϟ āϰāĻŋāĻĒā§‹āϜāĻŋāϟāϰāĻŋāϰ āĻŦā§āϰāĻžāĻžā§āϚ āϞāĻŋāĻ¸ā§āϟ āĻĻ⧇āĻ–āϤ⧇: ​

bash
git branch -r
git branch -r

âžĄī¸ āĻāϟāĻŋ āϰāĻŋāĻŽā§‹āϟ āĻŦā§āϰāĻžāĻžā§āϚāϗ⧁āϞ⧋ āĻĻ⧇āĻ–āĻžā§Ÿ, āϝ⧇āĻŽāύ:

origin/main
origin/dev
origin/feature/login
origin/main
origin/dev
origin/feature/login

đŸ§Ē āĻ…āύ⧁āĻļā§€āϞāύ⧇āϰ āϜāĻ¨ā§āϝ āĻ•āĻŋāϛ⧁ āϟāĻŋāĻĒāϏ: ​

  1. GitHub āĻĨ⧇āϕ⧇ āϕ⧋āύ⧋ āĻĒāĻžāĻŦāϞāĻŋāĻ• āĻĒā§āϰāĻœā§‡āĻ•ā§āϟ āĻ•ā§āϞ⧋āύ āĻ•āϰ⧁āύāĨ¤
  2. āĻ…āĻ¨ā§āϝ āĻ•āĻŽā§āĻĒāĻŋāωāϟāĻžāϰ āĻĨ⧇āϕ⧇ āĻĢāĻžāχāϞ āĻāĻĄāĻŋāϟ āĻ•āϰ⧇ git push āĻ•āϰ⧁āύāĨ¤
  3. āϤāĻžāϰāĻĒāϰ āφāĻĒāύāĻžāϰ āĻĒā§āϰāĻĨāĻŽ āĻ•āĻŽā§āĻĒāĻŋāωāϟāĻžāϰ⧇ āĻāϏ⧇ git pull āĻĻāĻŋāύ āĻāĻŦāĻ‚ āĻĒāϰāĻŋāĻŦāĻ°ā§āϤāύ āĻĻ⧇āϖ⧁āύāĨ¤

🧭 āϏāĻ‚āĻ•ā§āώ⧇āĻĒ⧇ āĻŽāύ⧇ āϰāĻžāĻ–āĻžāϰ āĻĒā§Ÿā§‡āĻ¨ā§āϟ ​

āĻ•āĻžāϜāĻ•āĻŽāĻžāĻ¨ā§āĻĄ
āϰāĻŋāĻŽā§‹āϟ āĻĨ⧇āϕ⧇ āφāĻĒāĻĄā§‡āϟ āύāĻŋā§Ÿā§‡ āϞ⧋āĻ•āĻžāϞ⧇ āĻŽāĻžāĻ°ā§āϜgit pull
āϰāĻŋāĻŦ⧇āχāϏ āĻĻāĻŋā§Ÿā§‡ āφāĻĒāĻĄā§‡āϟgit pull --rebase
āĻļ⧁āϧ⧁ āφāĻĒāĻĄā§‡āϟ āĻĢ⧇āϚgit fetch
āĻŽāĻžāĻ°ā§āϜ āĻ•āύāĻĢā§āϞāĻŋāĻ•ā§āϟ āĻā§œāĻžāϤ⧇git stash āφāϗ⧇ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰ⧁āύ

🔚 āωāĻĒāϏāĻ‚āĻšāĻžāϰ ​

git pull āĻāĻŽāύ āĻāĻ•āϟāĻŋ āĻ•āĻŽāĻžāĻ¨ā§āĻĄ āϝāĻž āĻĒā§āϰāϤāĻŋāĻĻāĻŋāύ Git āĻŦā§āϝāĻŦāĻšāĻžāϰāĻ•āĻžāϰ⧀āϰāĻž āĻāĻ•āĻžāϧāĻŋāĻ•āĻŦāĻžāϰ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰ⧇āĨ¤ āĻāϟāĻŋ āϕ⧋āĻĄ āφāĻĒāĻĄā§‡āϟ āϰāĻžāĻ–āĻžāϰ āϜāĻ¨ā§āϝ āĻ…āĻĒāϰāĻŋāĻšāĻžāĻ°ā§āϝāĨ¤ āφāĻĒāύāĻŋ āϝāĻĻāĻŋ āϟāĻŋāĻŽā§‡ āĻ•āĻžāϜ āĻ•āϰ⧇āύ, āϤāĻŦ⧇ pull āύāĻŋ⧟āĻŽāĻŋāϤ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰāĻž āωāϚāĻŋāϤ, āύāĻž āĻšāϞ⧇ āĻŽāĻžāĻ°ā§āϜ āĻ•āύāĻĢā§āϞāĻŋāĻ•ā§āϟ āĻŦā§‡ā§œā§‡ āϝ⧇āϤ⧇ āĻĒāĻžāϰ⧇āĨ¤

Released under the MIT License.