Skip to content

🔄 Git - Fast-Forward vs No-Fast-Forward Merge ​

Git-āĻ āĻŦā§āϰāĻžāĻžā§āϚ āĻŽāĻžāĻ°ā§āϜ āĻ•āϰāĻžāϰ āϏāĻŽā§Ÿ āĻĻ⧁āϟāĻŋ āϗ⧁āϰ⧁āĻ¤ā§āĻŦāĻĒā§‚āĻ°ā§āĻŖ āĻ•āύāϏ⧇āĻĒā§āϟ āĻ°ā§Ÿā§‡āϛ⧇: Fast-Forward Merge āĻāĻŦāĻ‚ No Fast-Forward MergeāĨ¤ āĻāχ āĻĻ⧁āϟāĻŋ āĻĒāĻĻā§āϧāϤāĻŋāϰ āĻŽāĻ§ā§āϝ⧇ āĻĒāĻžāĻ°ā§āĻĨāĻ•ā§āϝ āĻŦā§‹āĻāĻž āĻāĻŦāĻ‚ āϏāĻ āĻŋāĻ• āϏāĻŽā§Ÿā§‡ āϏ⧇āϗ⧁āϞāĻŋ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰāĻž āϖ⧁āĻŦāχ āϗ⧁āϰ⧁āĻ¤ā§āĻŦāĻĒā§‚āĻ°ā§āĻŖāĨ¤

⚡ Fast-Forward Merge ​

Fast-Forward Merge āϤāĻ–āύ āϘāĻŸā§‡ āϝāĻ–āύ āφāĻĒāύāĻŋ āϝ⧇ āĻŦā§āϰāĻžāĻžā§āϚāϟāĻŋ āĻŽāĻžāĻ°ā§āϜ āĻ•āϰāϛ⧇āύ āϏ⧇āϟāĻŋ āĻāĻ•ā§āĻ¸ā§āϝāĻžāĻ•ā§āϟāϞāĻŋ āĻŦāĻ°ā§āϤāĻŽāĻžāύ āĻŦā§āϰāĻžāĻžā§āĻšā§‡āϰ āωāĻĒāϰ āĻ­āĻŋāĻ¤ā§āϤāĻŋ āĻ•āϰ⧇ āĻĨāĻžāϕ⧇ (āĻ…āĻĨāĻŦāĻž āύāϤ⧁āύ āϕ⧋āύ āĻ•āĻŽāĻŋāϟ āύ⧇āχ)āĨ¤ āĻāϰ āĻŽāĻžāύ⧇ āĻšāϞ⧋, āĻŽāĻžāĻ°ā§āϜ āĻ•āϰāĻžāϰ āϏāĻŽā§Ÿ Git āϕ⧋āύ⧋ āύāϤ⧁āύ āĻŽāĻžāĻ°ā§āϜ āĻ•āĻŽāĻŋāϟ āϤ⧈āϰāĻŋ āύāĻž āĻ•āϰ⧇ āϏāϰāĻžāϏāϰāĻŋ āϐ āĻŦā§āϰāĻžāĻžā§āĻšā§‡āϰ āϏāĻŽāĻ¸ā§āϤ āĻĒāϰāĻŋāĻŦāĻ°ā§āϤāύ āύāĻŋā§Ÿā§‡ āĻŦāĻ°ā§āϤāĻŽāĻžāύ āĻŦā§āϰāĻžāĻžā§āϚāϕ⧇ āĻāĻ—āĻŋā§Ÿā§‡ āύāĻŋā§Ÿā§‡ āϝāĻžā§ŸāĨ¤

Fast-Forward Merge āϕ⧀āĻ­āĻžāĻŦ⧇ āĻ•āĻžāϜ āĻ•āϰ⧇? ​

āϧāϰāĻž āϝāĻžāĻ•, āφāĻĒāύāĻŋ main āĻŦā§āϰāĻžāĻžā§āĻšā§‡ āφāϛ⧇āύ āĻāĻŦāĻ‚ āĻāĻ•āϟāĻŋ āύāϤ⧁āύ āĻĢāĻŋāϚāĻžāϰ āĻŦā§āϰāĻžāĻžā§āϚ (feature/new-ui) āϤ⧈āϰāĻŋ āĻ•āϰ⧇āϛ⧇āύāĨ¤ āϝāĻ–āύ feature/new-ui āĻŦā§āϰāĻžāĻžā§āϚāϟāĻŋ main āĻŦā§āϰāĻžāĻžā§āĻšā§‡āϰ āωāĻĒāϰ āĻ­āĻŋāĻ¤ā§āϤāĻŋ āĻ•āϰ⧇ āϤ⧈āϰāĻŋ āĻšā§Ÿ āĻāĻŦāĻ‚ āĻĒāϰ⧇ āϕ⧋āύ āύāϤ⧁āύ āĻ•āĻŽāĻŋāϟ āύāĻž āĻ•āϰ⧇ āĻļ⧁āϧ⧁ āĻŽā§‚āϞ āĻŦā§āϰāĻžāĻžā§āĻšā§‡āϰ āωāĻĒāϰ⧇ āϚāϞ⧇ āφāϏ⧇, āϤāĻ–āύ Git āĻĢāĻžāĻ¸ā§āϟ-āĻĢāϰāĻ“ā§ŸāĻžāĻ°ā§āĻĄ āĻŽāĻžāĻ°ā§āϜ āĻ•āϰ⧇āĨ¤

āωāĻĻāĻžāĻšāϰāĻŖ: ​

  1. āφāĻĒāύāĻŋ main āĻŦā§āϰāĻžāĻžā§āĻšā§‡ āφāϛ⧇āύāĨ¤

  2. āφāĻĒāύāĻŋ āĻāĻ•āϟāĻŋ āύāϤ⧁āύ āĻŦā§āϰāĻžāĻžā§āϚ āϤ⧈āϰāĻŋ āĻ•āϰ⧇āϛ⧇āύ:

    bash
    git checkout -b feature/new-ui
    git checkout -b feature/new-ui
  3. āφāĻĒāύāĻŋ feature/new-ui āĻŦā§āϰāĻžāĻžā§āĻšā§‡ āĻ•āĻŋāϛ⧁ āĻĒāϰāĻŋāĻŦāĻ°ā§āϤāύ āĻ•āϰ⧇āϛ⧇āύ āĻāĻŦāĻ‚ āĻāĻ•āϟāĻŋ āĻ•āĻŽāĻŋāϟ āĻ•āϰ⧇āϛ⧇āύāĨ¤

  4. āĻāĻ–āύ main āĻŦā§āϰāĻžāĻžā§āĻšā§‡ āĻĢāĻŋāϰ⧇ āφāϏ⧁āύ:

    bash
    git checkout main
    git checkout main
  5. āϝāĻ–āύ āφāĻĒāύāĻŋ feature/new-ui āĻŦā§āϰāĻžāĻžā§āϚāϟāĻŋ āĻŽāĻžāĻ°ā§āϜ āĻ•āϰāĻŦ⧇āύ:

    bash
    git merge feature/new-ui
    git merge feature/new-ui

āĻāϟāĻŋ fast-forward merge āĻšāĻŦ⧇ āϝāĻĻāĻŋ main āĻŦā§āϰāĻžāĻžā§āĻšā§‡āϰ āϕ⧋āύ āύāϤ⧁āύ āĻĒāϰāĻŋāĻŦāĻ°ā§āϤāύ āύāĻž āĻĨāĻžāϕ⧇ āĻāĻŦāĻ‚ āφāĻĒāύāĻžāϰ feature/new-ui āĻŦā§āϰāĻžāĻžā§āĻšā§‡āϰ āχāϤāĻŋāĻšāĻžāϏ āϏāϰāĻžāϏāϰāĻŋ main āĻŦā§āϰāĻžāĻžā§āĻšā§‡āϰ āϏāĻžāĻĨ⧇ āϏāĻ‚āϝ⧁āĻ•ā§āϤ āĻĨāĻžāϕ⧇āĨ¤ āĻāĻ–āĻžāύ⧇ Git āϕ⧋āύāĻ“ āύāϤ⧁āύ āĻŽāĻžāĻ°ā§āϜ āĻ•āĻŽāĻŋāϟ āϤ⧈āϰāĻŋ āĻ•āϰāĻŦ⧇ āύāĻž, āĻŦāϰāĻ‚ main āĻŦā§āϰāĻžāĻžā§āϚāϕ⧇ āφāĻĒāĻĄā§‡āϟ āĻ•āϰāĻŦ⧇āĨ¤

🚧 No Fast-Forward Merge ​

No Fast-Forward Merge āϤāĻ–āύ āϘāĻŸā§‡ āϝāĻ–āύ āφāĻĒāύāĻŋ āĻĢāĻŋāϚāĻžāϰ āĻŦā§āϰāĻžāĻžā§āϚāϟāĻŋ āĻŽāĻžāĻ°ā§āϜ āĻ•āϰ⧇āύ āĻāĻŦāĻ‚ Git āĻāĻ•āϟāĻŋ āύāϤ⧁āύ āĻŽāĻžāĻ°ā§āϜ āĻ•āĻŽāĻŋāϟ āϤ⧈āϰāĻŋ āĻ•āϰāϤ⧇ āĻŦāĻžāĻ§ā§āϝ āĻšā§ŸāĨ¤ āϏāĻžāϧāĻžāϰāĻŖāϤ āϝāĻ–āύ main āĻŦā§āϰāĻžāĻžā§āĻšā§‡āϰ āχāϤāĻŋāĻšāĻžāϏ⧇ āϕ⧋āύ āύāϤ⧁āύ āĻ•āĻŽāĻŋāϟ āĻĨāĻžāϕ⧇ āĻ…āĻĨāĻŦāĻž āĻŽāĻžāĻ°ā§āĻœā§‡āϰ āϏāĻŽā§Ÿ āχāϤāĻŋāĻšāĻžāϏ āĻāĻ•āĻ¤ā§āϰāĻŋāϤ āĻ•āϰāĻž āĻĒā§āĻ°ā§Ÿā§‹āϜāύ āĻšā§Ÿ, āϤāĻ–āύ Git no-ff (No Fast-Forward) āĻ…āĻĒāĻļāύ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰāĻŦ⧇āĨ¤

āĻāϟāĻŋ āĻŦā§āϰāĻžāĻžā§āĻšā§‡āϰ āχāϤāĻŋāĻšāĻžāϏāϕ⧇ āĻĒāϰāĻŋāĻˇā§āĻ•āĻžāϰ āĻāĻŦāĻ‚ āϞāĻŋāύāĻŋ⧟āĻžāϰ āϰāĻžāĻ–āĻžāϰ āϜāĻ¨ā§āϝ āωāĻĒāĻ•āĻžāϰ⧀, āĻ•āĻžāϰāĻŖ āĻāϤ⧇ āĻāĻ•āϟāĻŋ āĻ¸ā§āĻĒāĻˇā§āϟ āĻŽāĻžāĻ°ā§āϜ āĻ•āĻŽāĻŋāϟ āϤ⧈āϰāĻŋ āĻšā§Ÿ, āϝāĻž āφāĻĒāύāĻŋ āĻĒāϰ⧇ āĻŸā§āĻ°ā§āϝāĻžāĻ• āĻ•āϰāϤ⧇ āĻĒāĻžāϰ⧇āύāĨ¤

No Fast-Forward Merge āϕ⧀āĻ­āĻžāĻŦ⧇ āĻ•āĻžāϜ āĻ•āϰ⧇? ​

no-ff āĻ…āĻĒāĻļāύāϟāĻŋ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰāĻžāϰ āĻŽāĻžāĻ§ā§āϝāĻŽā§‡ āφāĻĒāύāĻŋ Git āϕ⧇ āĻŦāϞāϛ⧇āύ āϝ⧇, āφāĻĒāύāĻŋ āϝāϤāχ āϏāĻŽā§āĻ­āĻŦ āĻŽāĻžāĻ°ā§āĻœā§‡āϰ āχāϤāĻŋāĻšāĻžāϏ⧇ āĻāĻ•āϟāĻŋ āύāϤ⧁āύ āĻŽāĻžāĻ°ā§āϜ āĻ•āĻŽāĻŋāϟ āϚāĻžāύ, āĻāĻŽāύāĻ•āĻŋ āϝāĻĻāĻŋ āφāĻĒāύāĻžāϰ āĻŦā§āϰāĻžāĻžā§āĻšā§‡āϰ āĻĒāϰāĻŋāĻŦāĻ°ā§āϤāύāϗ⧁āϞāĻŋ āĻāĻ•āϟāĻŋ āĻĢāĻžāĻ¸ā§āϟ-āĻĢāϰāĻ“ā§ŸāĻžāĻ°ā§āĻĄ āĻŽāĻžāĻ°ā§āĻœā§‡āϰ āĻŽāϤ⧋ āĻšāĻ“ā§ŸāĻž āωāϚāĻŋāϤāĨ¤

āωāĻĻāĻžāĻšāϰāĻŖ: ​

  1. āφāĻĒāύāĻŋ main āĻŦā§āϰāĻžāĻžā§āĻšā§‡ āφāϛ⧇āύ āĻāĻŦāĻ‚ āĻāĻ•āϟāĻŋ āύāϤ⧁āύ āĻŦā§āϰāĻžāĻžā§āϚ āϤ⧈āϰāĻŋ āĻ•āϰ⧇āϛ⧇āύ:

    bash
    git checkout -b feature/new-login
    git checkout -b feature/new-login
  2. āφāĻĒāύāĻŋ feature/new-login āĻŦā§āϰāĻžāĻžā§āĻšā§‡ āĻ•āĻŋāϛ⧁ āϕ⧋āĻĄ āĻĒāϰāĻŋāĻŦāĻ°ā§āϤāύ āĻ•āϰ⧇āϛ⧇āύ āĻāĻŦāĻ‚ āĻāĻ•āϟāĻŋ āĻ•āĻŽāĻŋāϟ āĻ•āϰ⧇āϛ⧇āύāĨ¤

  3. āφāĻĒāύāĻŋ āφāĻŦāĻžāϰ main āĻŦā§āϰāĻžāĻžā§āĻšā§‡ āĻĢāĻŋāϰ⧇ āφāϏ⧁āύ:

    bash
    git checkout main
    git checkout main
  4. āĻāĻ–āύ āφāĻĒāύāĻŋ feature/new-login āĻŦā§āϰāĻžāĻžā§āϚāϟāĻŋ āĻŽāĻžāĻ°ā§āϜ āĻ•āϰāϤ⧇ āϚāĻžāύ, āϤāĻŦ⧇ āφāĻĒāύāĻŋ --no-ff āĻ…āĻĒāĻļāύ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰāĻŦ⧇āύ:

    bash
    git merge --no-ff feature/new-login
    git merge --no-ff feature/new-login

āĻāϟāĻŋ āĻāĻ•āϟāĻŋ āύāϤ⧁āύ āĻŽāĻžāĻ°ā§āϜ āĻ•āĻŽāĻŋāϟ āϤ⧈āϰāĻŋ āĻ•āϰāĻŦ⧇, āϝāĻž feature/new-login āĻŦā§āϰāĻžāĻžā§āϚāϟāĻŋ main āĻŦā§āϰāĻžāĻžā§āĻšā§‡ āĻŽāĻžāĻ°ā§āϜ āĻ•āϰāĻžāϰ āϏāĻŽā§Ÿ āĻĻ⧇āĻ–āĻž āϝāĻžāĻŦ⧇āĨ¤

📊 Fast-Forward vs No Fast-Forward Merge āĻāϰ āĻŽāĻ§ā§āϝ⧇ āĻĒāĻžāĻ°ā§āĻĨāĻ•ā§āϝ ​

āĻŦāĻŋāώ⧟Fast-Forward MergeNo Fast-Forward Merge
āĻŽāĻžāĻ°ā§āϜ āĻ•āĻŽāĻŋāϟ āϤ⧈āϰāĻŋ āĻšāĻŦ⧇?āύāĻž, āĻŽāĻžāĻ°ā§āϜ āĻ•āĻŽāĻŋāϟ āϤ⧈āϰāĻŋ āĻšā§Ÿ āύāĻžāĨ¤āĻšā§āϝāĻžāρ, āĻāĻ•āϟāĻŋ āĻŽāĻžāĻ°ā§āϜ āĻ•āĻŽāĻŋāϟ āϤ⧈āϰāĻŋ āĻšāĻŦ⧇āĨ¤
āĻŽāĻžāĻ°ā§āϜ āĻ•āĻŽāĻŋāϟ āĻ•āĻŋ āĻĨāĻžāĻ•āĻŦ⧇?āύāĻž, āĻŽāĻžāĻ°ā§āϜ āĻ•āĻŽāĻŋāĻŸā§‡āϰ āχāϤāĻŋāĻšāĻžāϏ⧇āϰ āĻ…āĻ‚āĻļ āĻšāĻŦ⧇ āύāĻžāĨ¤āĻšā§āϝāĻžāρ, āĻāϟāĻŋ āχāϤāĻŋāĻšāĻžāϏ⧇ āĻāĻ•āϟāĻŋ āĻŽāĻžāĻ°ā§āϜ āĻ•āĻŽāĻŋāϟ āĻšāĻŋāϏ⧇āĻŦ⧇ āĻĨāĻžāĻ•āĻŦ⧇āĨ¤
āĻ…āĻĒāĻļāύāĻāϟāĻŋ āϏāĻžāϧāĻžāϰāĻŖāϤ āĻ¸ā§āĻŦ⧟āĻ‚āĻ•ā§āϰāĻŋ⧟āĻ­āĻžāĻŦ⧇ āϘāĻŸā§‡āĨ¤--no-ff āĻ…āĻĒāĻļāύ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰ⧇ āĻāϟāĻŋ āϚāĻžāϞāĻžāϤ⧇ āĻšā§ŸāĨ¤
āχāϤāĻŋāĻšāĻžāϏāχāϤāĻŋāĻšāĻžāϏ āĻāĻ•ā§āϏāĻžāĻ•ā§āϟāϞāĻŋ āϞāĻŋāύāĻŋ⧟āĻžāϰ āĻšā§Ÿā§‡ āĻĨāĻžāϕ⧇āĨ¤āχāϤāĻŋāĻšāĻžāϏ⧇āϰ āĻŽāĻ§ā§āϝ⧇ āĻŽāĻžāĻ°ā§āϜ āĻ•āĻŽāĻŋāϟ āĻĨāĻžāĻ•āĻŦ⧇, āϝāĻž āĻĒāϰāĻŋāĻŦāĻ°ā§āϤāύāϗ⧁āϞ⧋āϰ āϏ⧁āĻ¸ā§āĻĒāĻˇā§āϟ āĻŸā§āĻ°ā§āϝāĻžāĻ• āϤ⧈āϰāĻŋ āĻ•āϰ⧇āĨ¤
āĻ•āĻ–āύ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰāĻŦ⧇āύ?āϝāĻ–āύ āχāϤāĻŋāĻšāĻžāϏ āϖ⧁āĻŦāχ āϏāĻšāϜ āĻāĻŦāĻ‚ āĻŽāĻžāĻ°ā§āϜ āĻ•āĻŽāĻŋāĻŸā§‡āϰ āĻĒā§āĻ°ā§Ÿā§‹āϜāύ āύ⧇āχāĨ¤āϝāĻ–āύ āφāĻĒāύāĻŋ āϚāĻžāύ āĻāĻ•āϟāĻŋ āĻ¸ā§āĻĒāĻˇā§āϟ āĻŽāĻžāĻ°ā§āϜ āĻ•āĻŽāĻŋāϟ āϤ⧈āϰāĻŋ āĻšā§‹āĻ• āĻāĻŦāĻ‚ āχāϤāĻŋāĻšāĻžāϏ āĻĒāϰāĻŋāĻˇā§āĻ•āĻžāϰ āϰāĻžāĻ–āĻž āĻšā§‹āĻ•āĨ¤

🧑‍đŸ’ģ āωāĻĻāĻžāĻšāϰāĻŖ ā§§: Fast-Forward Merge ​

  1. āĻĢāĻŋāϚāĻžāϰ āĻŦā§āϰāĻžāĻžā§āϚ āϤ⧈āϰāĻŋ āĻ•āϰ⧁āύ:

    bash
    git checkout -b feature/landing-page
    git checkout -b feature/landing-page
  2. āĻ•āĻŋāϛ⧁ āĻĒāϰāĻŋāĻŦāĻ°ā§āϤāύ āĻ•āϰ⧁āύ āĻāĻŦāĻ‚ āĻ•āĻŽāĻŋāϟ āĻ•āϰ⧁āύ:

    bash
    git commit -am "Added landing page UI"
    git commit -am "Added landing page UI"
  3. main āĻŦā§āϰāĻžāĻžā§āĻšā§‡ āĻĢāĻŋāϰ⧇ āφāϏ⧁āύ:

    bash
    git checkout main
    git checkout main
  4. āĻĢāĻŋāϚāĻžāϰ āĻŦā§āϰāĻžāĻžā§āϚ āĻŽāĻžāĻ°ā§āϜ āĻ•āϰ⧁āύ:

    bash
    git merge feature/landing-page
    git merge feature/landing-page

āĻāϟāĻŋ fast-forward merge āĻšāĻŦ⧇, āϝāĻĻāĻŋ main āĻŦā§āϰāĻžāĻžā§āĻšā§‡āϰ āχāϤāĻŋāĻšāĻžāϏ⧇ āϕ⧋āύ āĻĒāϰāĻŋāĻŦāĻ°ā§āϤāύ āύāĻž āĻĨāĻžāϕ⧇ āĻāĻŦāĻ‚ āφāĻĒāύāĻŋ āĻļ⧁āϧ⧁ āύāϤ⧁āύ āĻ•āĻŽāĻŋāϟ āϝ⧋āĻ— āĻ•āϰ⧇āϛ⧇āύāĨ¤

🧑‍đŸ’ģ āωāĻĻāĻžāĻšāϰāĻŖ ⧍: No Fast-Forward Merge ​

  1. āĻĢāĻŋāϚāĻžāϰ āĻŦā§āϰāĻžāĻžā§āϚ āϤ⧈āϰāĻŋ āĻ•āϰ⧁āύ:

    bash
    git checkout -b feature/contact-form
    git checkout -b feature/contact-form
  2. āĻ•āĻŋāϛ⧁ āĻĒāϰāĻŋāĻŦāĻ°ā§āϤāύ āĻ•āϰ⧁āύ āĻāĻŦāĻ‚ āĻ•āĻŽāĻŋāϟ āĻ•āϰ⧁āύ:

    bash
    git commit -am "Created a contact form"
    git commit -am "Created a contact form"
  3. main āĻŦā§āϰāĻžāĻžā§āĻšā§‡ āĻĢāĻŋāϰ⧇ āφāϏ⧁āύ:

    bash
    git checkout main
    git checkout main
  4. feature/contact-form āĻŦā§āϰāĻžāĻžā§āϚāϟāĻŋ āĻŽāĻžāĻ°ā§āϜ āĻ•āϰ⧁āύ, āĻ•āĻŋāĻ¨ā§āϤ⧁ --no-ff āĻ…āĻĒāĻļāύ āĻĻāĻŋā§Ÿā§‡:

    bash
    git merge --no-ff feature/contact-form
    git merge --no-ff feature/contact-form

āĻāϟāĻŋ āĻāĻ•āϟāĻŋ āύāϤ⧁āύ āĻŽāĻžāĻ°ā§āϜ āĻ•āĻŽāĻŋāϟ āϤ⧈āϰāĻŋ āĻ•āϰāĻŦ⧇, āϝāĻž āφāĻĒāύāĻžāϰ āχāϤāĻŋāĻšāĻžāϏ⧇ āĻāĻ•āϟāĻŋ āĻ¸ā§āĻĒāĻˇā§āϟ āĻŽāĻžāĻ°ā§āϜ āĻĒā§Ÿā§‡āĻ¨ā§āϟ āĻšāĻŋāϏ⧇āĻŦ⧇ āĻĨāĻžāĻ•āĻŦ⧇āĨ¤

💡 āĻ…āϤāĻŋāϰāĻŋāĻ•ā§āϤ āϟāĻŋāĻĒāϏ: ​

  • --no-ff āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰ⧇, āφāĻĒāύāĻŋ āĻŦā§āϰāĻžāĻžā§āĻšā§‡āϰ āχāϤāĻŋāĻšāĻžāϏ⧇ āĻāĻ•āϟāĻŋ āĻ¸ā§āĻĒāĻˇā§āϟ āĻŽāĻžāχāϞāĻ¸ā§āĻŸā§‹āύ āϤ⧈āϰāĻŋ āĻ•āϰāϤ⧇ āĻĒāĻžāϰ⧇āύ, āϝāĻž āĻĒāϰ⧇ āϏāĻšāĻœā§‡ āĻŸā§āĻ°ā§āϝāĻžāĻ• āĻ•āϰāĻž āϝāĻžāĻŦ⧇āĨ¤
  • Fast-forward āĻŽāĻžāĻ°ā§āϜ āϤāĻ–āύāχ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰāĻž āωāϚāĻŋāϤ āϝāĻ–āύ āφāĻĒāύāĻŋ āϏāĻšāϜ āĻāĻŦāĻ‚ āϏāϰāϞ āχāϤāĻŋāĻšāĻžāϏ āϚāĻžāύ āĻāĻŦāĻ‚ āφāĻĒāύāĻžāϰ āĻ•āĻžāϛ⧇ āϕ⧋āύ⧋ āĻŽāĻžāĻ°ā§āϜ āĻ•āĻŽāĻŋāϟ āĻĒā§āĻ°ā§Ÿā§‹āϜāύ āύ⧇āχāĨ¤

đŸŽ¯ āϏ⧇āϰāĻž āĻ…āĻ­ā§āϝāĻžāϏ (Best Practices) ​

  • ✅ --no-ff āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰ⧁āύ āϝāĻ–āύ āφāĻĒāύāĻŋ āĻāĻ•āϟāĻŋ āĻŦā§āϰāĻžāĻžā§āĻšā§‡āϰ āĻĒāϰāĻŋāĻŦāĻ°ā§āϤāύāϗ⧁āϞāĻŋ āĻĒāϰāĻŋāĻˇā§āĻ•āĻžāϰāĻ­āĻžāĻŦ⧇ āχāϤāĻŋāĻšāĻžāϏ⧇ āĻŸā§āĻ°ā§āϝāĻžāĻ• āĻ•āϰāϤ⧇ āϚāĻžāύāĨ¤
  • ✅ Fast-forward āĻŽāĻžāĻ°ā§āϜ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰ⧁āύ āϝāĻ–āύ āφāĻĒāύāĻžāϕ⧇ āĻāĻ•āϟāĻŋ āϞāĻŋāύāĻŋ⧟āĻžāϰ āχāϤāĻŋāĻšāĻžāϏ āĻĒā§āĻ°ā§Ÿā§‹āϜāύāĨ¤
  • ✅ āĻŽāĻžāĻ°ā§āϜ āĻ•āϰāĻžāϰ āφāϗ⧇ āύāĻŋ⧟āĻŽāĻŋāϤ āĻŦā§āϰāĻžāĻžā§āϚ āφāĻĒāĻĄā§‡āϟ āĻ•āϰ⧁āύ, āϝāĻžāϤ⧇ āϕ⧋āύ⧋ āĻ•āύāĻĢā§āϞāĻŋāĻ•ā§āϟ āύāĻž āĻĨāĻžāϕ⧇āĨ¤
  • ✅ āĻĢāĻŋāϚāĻžāϰ āĻŦā§āϰāĻžāĻžā§āϚ āĻŽāĻžāĻ°ā§āϜ āĻ•āϰāĻžāϰ āφāϗ⧇ git rebase āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰ⧇ āφāĻĒāύāĻžāϰ āĻŦā§āϰāĻžāĻžā§āϚāϟāĻŋāϕ⧇ main āĻŦā§āϰāĻžāĻžā§āĻšā§‡āϰ āϏāĻ°ā§āĻŦāĻļ⧇āώ āφāĻĒāĻĄā§‡āĻŸā§‡āϰ āϏāĻžāĻĨ⧇ āϏāĻžāĻŽāĻžā§āϜāĻ¸ā§āϝ āĻ•āϰ⧁āύāĨ¤

Released under the MIT License.