đĨ Git, GitHub, PR & Version Control â Interview Questions (Bangla)
đ¸ Version Control Basics
āĻĒā§āϰāĻļā§āύ ā§§: Version Control System (VCS) āĻā§?
āĻāϤā§āϤāϰ:
Version Control System āĻāĻŽāύ āĻāĻāĻāĻŋ āϏāĻŋāϏā§āĻā§āĻŽ āϝāĻž āĻā§āĻĄā§āϰ āĻĒā§āϰāϤāĻŋāĻāĻŋ āĻĒāϰāĻŋāĻŦāϰā§āϤāύā§āϰ āĻāϤāĻŋāĻšāĻžāϏ āϏāĻāϰāĻā§āώāĻŖ āĻāϰ⧠āĻāĻŦāĻ āĻāĻāĻžāϧāĻŋāĻ āĻĄā§āĻā§āϞāĻĒāĻžāϰāĻā§ āĻāĻāϏāĻžāĻĨā§ āĻāĻžāĻ āĻāϰāϤ⧠āϏāĻžāĻšāĻžāϝā§āϝ āĻāϰā§āĨ¤
āĻĒā§āϰāĻļā§āύ ⧍: Version control āĻā§āύ āĻĻāϰāĻāĻžāϰ?
āĻāϤā§āϤāϰ:
- āĻā§āĻĄ āĻĒāϰāĻŋāĻŦāϰā§āϤāύā§āϰ āĻāϤāĻŋāĻšāĻžāϏ āϏāĻāϰāĻā§āώāĻŖ
- āĻā§āϞ āĻšāϞ⧠āĻāĻā§āϰ āĻāĻžāϰā§āϏāύ⧠āĻĢāĻŋāϰ⧠āϝāĻžāĻā§āĻž
- āĻāĻāĻžāϧāĻŋāĻ āĻĄā§āĻā§āϞāĻĒāĻžāϰ āĻāĻāϏāĻžāĻĨā§ āĻāĻžāĻ āĻāϰāĻž
- Conflict āϏāĻšāĻā§ āĻŽā§āϝāĻžāύā§āĻ āĻāϰāĻž
āĻĒā§āϰāĻļā§āύ ā§Š: Version control āĻāĻžā§āĻž āĻā§ āϏāĻŽāϏā§āϝāĻž āĻšā§?
āĻāϤā§āϤāϰ:
- āĻā§āĻĄ overwrite āĻšā§ā§ āϝā§āϤ⧠āĻĒāĻžāϰā§
- āĻā§ āĻā§ āĻĒāϰāĻŋāĻŦāϰā§āϤāύ āĻāϰā§āĻā§ āĻŦā§āĻāĻž āϝāĻžā§ āύāĻž
- Backup āĻŦāĻž rollback āϏāĻŽā§āĻāĻŦ āĻšā§ āύāĻž
āĻĒā§āϰāĻļā§āύ ā§Ē: Centralized āĻ Distributed VCS āĻāϰ āĻĒāĻžāϰā§āĻĨāĻā§āϝ āĻā§?
āĻāϤā§āϤāϰ:
- Centralized: SVN
- Distributed: Git
- Git āĻ āϏāĻŽā§āĻĒā§āϰā§āĻŖ repository āϞā§āĻāĻžāϞ āĻŽā§āĻļāĻŋāύ⧠āĻĨāĻžāĻā§
āĻĒā§āϰāĻļā§āύ ā§Ģ: Git āĻā§?
āĻāϤā§āϤāϰ:
Git āĻšāϞ⧠āĻāĻāĻāĻŋ Distributed Version Control System āϝāĻž Linus Torvalds āϤā§āϰāĻŋ āĻāϰā§āĻā§āύāĨ¤
āĻĒā§āϰāĻļā§āύ ā§Ŧ: Git āĻāϰ GitHub āĻāĻŋ āĻāĻ āĻāĻŋāύāĻŋāϏ?
āĻāϤā§āϤāϰ:
āύāĻžāĨ¤
- Git â version control tool
- GitHub â Git repository hosting platform
āĻĒā§āϰāĻļā§āύ ā§: GitHub āĻāĻžā§āĻž āĻāĻŋ Git āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻāϰāĻž āϝāĻžā§?
āĻāϤā§āϤāϰ:
āĻšā§āϝāĻžāĻ, āϏāĻŽā§āĻĒā§āϰā§āĻŖ āϞā§āĻāĻžāϞāĻāĻžāĻŦā§āĻ Git āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻāϰāĻž āϝāĻžā§āĨ¤
āĻĒā§āϰāĻļā§āύ ā§Ž: Repository āĻā§?
āĻāϤā§āϤāϰ:
Repository āĻšāϞ⧠āĻāĻāĻāĻŋ āĻĒā§āϰāĻā§āĻā§āĻā§āϰ āϏāĻŽā§āĻĒā§āϰā§āĻŖ source code āĻ commit history āϏāĻāϰāĻā§āώāĻŖā§āϰ āĻāĻžā§āĻāĻžāĨ¤
āĻĒā§āϰāĻļā§āύ ⧝: Local āĻ Remote repository āĻā§?
āĻāϤā§āϤāϰ:
- Local â āύāĻŋāĻā§āϰ āĻāĻŽā§āĻĒāĻŋāĻāĻāĻžāϰā§
- Remote â GitHub / GitLab āĻ
āĻĒā§āϰāĻļā§āύ ā§§ā§Ļ: Git workflow āĻā§?
āĻāϤā§āϤāϰ:
āĻā§āĻĄ āϞā§āĻāĻž â commit â push â pull request â review â merge
đ¸ Basic Git Commands
āĻĒā§āϰāĻļā§āύ ā§§ā§§: git init āĻā§ āĻāϰā§?
āĻāϤā§āϤāϰ:
āύāϤā§āύ Git repository āϤā§āϰāĻŋ āĻāϰā§āĨ¤
āĻĒā§āϰāĻļā§āύ ⧧⧍: git clone āĻā§?
āĻāϤā§āϤāϰ:
Remote repository āϞā§āĻāĻžāϞ āĻŽā§āĻļāĻŋāύ⧠āĻāĻĒāĻŋ āĻāϰā§āĨ¤
āĻĒā§āϰāĻļā§āύ ā§§ā§Š: git status āĻā§ āĻĻā§āĻāĻžā§?
āĻāϤā§āϤāϰ:
Working directory āĻ staging area āĻāϰ āĻ
āĻŦāϏā§āĻĨāĻž āĻĻā§āĻāĻžā§āĨ¤
āĻĒā§āϰāĻļā§āύ ā§§ā§Ē: git add āĻā§?
āĻāϤā§āϤāϰ:
āĻĢāĻžāĻāϞ staging area-āϤ⧠āĻĒāĻžāĻ āĻžā§āĨ¤
āĻĒā§āϰāĻļā§āύ ā§§ā§Ģ: git commit āĻā§?
āĻāϤā§āϤāϰ:
Staged āĻĒāϰāĻŋāĻŦāϰā§āϤāύ āϏā§āĻĨāĻžā§ā§āĻāĻžāĻŦā§ history-āϤ⧠āϏāĻāϰāĻā§āώāĻŖ āĻāϰā§āĨ¤
āĻĒā§āϰāĻļā§āύ ā§§ā§Ŧ: āĻāĻžāϞ⧠commit message āĻā§āĻŽāύ āĻšāĻā§āĻž āĻāĻāĻŋāϤ?
āĻāϤā§āϤāϰ:
- āĻā§āĻ
- āĻĒāϰāĻŋāώā§āĻāĻžāϰ
- āĻ āϰā§āĻĨāĻŦā§āϧāĻ
āĻāĻĻāĻžāĻšāϰāĻŖ:
fix: login validation issue
āĻĒā§āϰāĻļā§āύ ā§§ā§: git log āĻā§?
āĻāϤā§āϤāϰ:
āϏāĻŦ commit history āĻĻā§āĻāĻžā§āĨ¤
āĻĒā§āϰāĻļā§āύ ā§§ā§Ž: git diff āĻā§?
āĻāϤā§āϤāϰ:
āĻŦāϰā§āϤāĻŽāĻžāύ āĻĒāϰāĻŋāĻŦāϰā§āϤāύ āĻ āĻāĻā§āϰ commit āĻāϰ āĻĒāĻžāϰā§āĻĨāĻā§āϝ āĻĻā§āĻāĻžā§āĨ¤
āĻĒā§āϰāĻļā§āύ ⧧⧝: git reset āĻā§?
āĻāϤā§āϤāϰ:
Commit āĻŦāĻž staging āĻŦāĻžāϤāĻŋāϞ āĻāϰāϤ⧠āĻŦā§āϝāĻŦāĻšā§āϤ āĻšā§āĨ¤
āĻĒā§āϰāĻļā§āύ ⧍ā§Ļ: git revert āĻā§?
āĻāϤā§āϤāϰ:
āύāϤā§āύ commit āϤā§āϰāĻŋ āĻāϰ⧠āĻāĻā§āϰ commit undo āĻāϰā§āĨ¤
đ¸ Branch & Merge
āĻĒā§āϰāĻļā§āύ ⧍⧧: Branch āĻā§?
āĻāϤā§āϤāϰ:
Branch āĻšāϞ⧠āĻŽā§āϞ āĻā§āĻĄ āĻĨā§āĻā§ āĻāϞāĻžāĻĻāĻž āĻāĻāĻāĻŋ development lineāĨ¤
āĻĒā§āϰāĻļā§āύ ⧍⧍: Branch āĻā§āύ āĻĻāϰāĻāĻžāϰ?
āĻāϤā§āϤāϰ:
- Feature āĻāϞāĻžāĻĻāĻž āĻāϰ⧠āĻāĻžāĻ āĻāϰāĻž
- Main branch āύāĻŋāϰāĻžāĻĒāĻĻ āϰāĻžāĻāĻž
āĻĒā§āϰāĻļā§āύ ā§¨ā§Š: Default branch āĻā§āύāĻāĻŋ?
āĻāϤā§āϤāϰ:
āĻŦāϰā§āϤāĻŽāĻžāύ⧠maināĨ¤
āĻĒā§āϰāĻļā§āύ ⧍ā§Ē: git checkout -b āĻā§?
āĻāϤā§āϤāϰ:
āύāϤā§āύ branch āϤā§āϰāĻŋ āĻ switch āĻāϰā§āĨ¤
āĻĒā§āϰāĻļā§āύ ⧍ā§Ģ: Merge āĻā§?
āĻāϤā§āϤāϰ:
āĻāĻ branch-āĻāϰ āĻā§āĻĄ āĻ
āύā§āϝ branch-āĻ āϝā§āĻā§āϤ āĻāϰāĻžāĨ¤
āĻĒā§āϰāĻļā§āύ ⧍ā§Ŧ: Merge conflict āĻā§?
āĻāϤā§āϤāϰ:
āĻāĻāĻ āϞāĻžāĻāύ⧠āĻāĻāĻžāϧāĻŋāĻ āĻĒāϰāĻŋāĻŦāϰā§āϤāύ āĻšāϞ⧠conflict āĻšā§āĨ¤
āĻĒā§āϰāĻļā§āύ ⧍ā§: Conflict āĻā§āĻāĻžāĻŦā§ resolve āĻāϰāĻž āĻšā§?
āĻāϤā§āϤāϰ:
- āĻŽā§āϝāĻžāύā§ā§āĻžāϞāĻŋ āĻā§āĻĄ āĻ āĻŋāĻ āĻāϰāĻž
- āĻĒā§āύāϰāĻžā§ commit āĻāϰāĻž
āĻĒā§āϰāĻļā§āύ ā§¨ā§Ž: Fast-forward merge āĻā§?
āĻāϤā§āϤāϰ:
āϝāĻāύ main branch āĻ āύāϤā§āύ commit āύāĻž āĻĨāĻžāĻā§āĨ¤
āĻĒā§āϰāĻļā§āύ ⧍⧝: Rebase āĻā§?
āĻāϤā§āϤāϰ:
Commit history āĻĒāϰāĻŋāώā§āĻāĻžāϰ āĻāϰāĻžāϰ āĻĒāĻĻā§āϧāϤāĻŋāĨ¤
āĻĒā§āϰāĻļā§āύ ā§Šā§Ļ: Cherry-pick āĻā§?
āĻāϤā§āϤāϰ:
āύāĻŋāϰā§āĻĻāĻŋāώā§āĻ āĻāĻāĻāĻŋ commit āĻ
āύā§āϝ branch-āĻ āύā§āĻā§āĻžāĨ¤
đ¸ GitHub & Pull Request
āĻĒā§āϰāĻļā§āύ ā§Šā§§: Remote repository āĻā§?
āĻāϤā§āϤāϰ:
GitHub āĻŦāĻž GitLab āĻ āĻĨāĻžāĻāĻž repositoryāĨ¤
āĻĒā§āϰāĻļā§āύ ā§Šā§¨: origin āĻā§?
āĻāϤā§āϤāϰ:
Remote repository āĻāϰ default āύāĻžāĻŽāĨ¤
āĻĒā§āϰāĻļā§āύ ā§Šā§Š: git push āĻā§?
āĻāϤā§āϤāϰ:
Local commit remote āĻ āĻĒāĻžāĻ āĻžā§āĨ¤
āĻĒā§āϰāĻļā§āύ ā§Šā§Ē: git pull āĻā§?
āĻāϤā§āϤāϰ:
Remote āĻĒāϰāĻŋāĻŦāϰā§āϤāύ āύāĻŋā§ā§ āĻāϏ⧠merge āĻāϰā§āĨ¤
āĻĒā§āϰāĻļā§āύ ā§Šā§Ģ: git fetch āĻ git pull āĻĒāĻžāϰā§āĻĨāĻā§āϝ āĻā§?
āĻāϤā§āϤāϰ:
- fetch â āĻļā§āϧ⧠āĻĄāĻžāĻāĻž āĻāύā§
- pull â āĻāύ⧠+ merge āĻāϰā§
āĻĒā§āϰāĻļā§āύ ā§Šā§Ŧ: Fork āĻā§?
āĻāϤā§āϤāϰ:
āĻ
āύā§āϝā§āϰ repository āύāĻŋāĻā§āϰ GitHub āĻ
ā§āϝāĻžāĻāĻžāĻāύā§āĻā§ āĻāĻĒāĻŋ āĻāϰāĻžāĨ¤
āĻĒā§āϰāĻļā§āύ ā§Šā§: Fork āĻā§āύ āĻĻāϰāĻāĻžāϰ?
āĻāϤā§āϤāϰ:
Open-source contribution āĻāϰ āĻāύā§āϝāĨ¤
āĻĒā§āϰāĻļā§āύ ā§Šā§Ž: Pull Request (PR) āĻā§?
āĻāϤā§āϤāϰ:
āĻāĻ branch-āĻāϰ āĻĒāϰāĻŋāĻŦāϰā§āϤāύ āĻ
āύā§āϝ branch-āĻ āϝā§āĻā§āϤ āĻāϰāĻžāϰ āĻ
āύā§āϰā§āϧāĨ¤
āĻĒā§āϰāĻļā§āύ ā§Šā§¯: PR āĻā§āύ āĻĻāϰāĻāĻžāϰ?
āĻāϤā§āϤāϰ:
- Code review
- Bug āϧāϰāĻž
- Team approval
āĻĒā§āϰāĻļā§āύ ā§Ēā§Ļ: PR workflow āĻā§?
āĻāϤā§āϤāϰ:
feature â push â PR â review â merge
āĻĒā§āϰāĻļā§āύ ā§Ēā§§: Code review āĻā§?
āĻāϤā§āϤāϰ:
āĻ
āύā§āϝ āĻĄā§āĻā§āϞāĻĒāĻžāϰ āĻĻā§āĻŦāĻžāϰāĻž āĻā§āĻĄ āϝāĻžāĻāĻžāĻāĨ¤
āĻĒā§āϰāĻļā§āύ ā§Ē⧍: PR merge āĻāϰ āϧāϰāύ āĻā§āĻāĻŋ?
āĻāϤā§āϤāϰ:
- Merge commit
- Squash merge
- Rebase merge
āĻĒā§āϰāĻļā§āύ ā§Ēā§Š: Squash merge āĻā§?
āĻāϤā§āϤāϰ:
āĻāĻāĻžāϧāĻŋāĻ commit āĻāĻāĻāĻŋāϤ⧠āĻĒāϰāĻŋāĻŖāϤ āĻāϰāĻžāĨ¤
āĻĒā§āϰāĻļā§āύ ā§Ēā§Ē: Draft PR āĻā§?
āĻāϤā§āϤāϰ:
āĻāĻžāĻ āĻāϞāĻŽāĻžāύ āĻ
āĻŦāϏā§āĻĨāĻžā§ āϤā§āϰāĻŋ āĻāϰāĻž PRāĨ¤
đ¸ Laravel + Git
āĻĒā§āϰāĻļā§āύ ā§Ēā§Ģ: .gitignore āĻā§?
āĻāϤā§āϤāϰ:
āϝā§āϏāĻŦ āĻĢāĻžāĻāϞ Git track āĻāϰāĻŦā§ āύāĻž āϏā§āĻā§āϞā§āϰ āϤāĻžāϞāĻŋāĻāĻžāĨ¤
āĻĒā§āϰāĻļā§āύ ā§Ēā§Ŧ: Laravel āĻ āĻā§āύ āĻĢāĻžāĻāϞ gitignore āĻāϰāĻž āĻšā§?
āĻāϤā§āϤāϰ:
.env
/vendor
/node_modules
/storage/*.log
āĻĒā§āϰāĻļā§āύ ā§Ēā§: .env āĻĢāĻžāĻāϞ Git āĻ āϰāĻžāĻāĻž āĻšā§ āύāĻž āĻā§āύ?
āĻāϤā§āϤāϰ:
āĻāϤ⧠database password āĻ secret key āĻĨāĻžāĻā§āĨ¤
āĻĒā§āϰāĻļā§āύ ā§Ēā§Ž: Git stash āĻā§?
āĻāϤā§āϤāϰ:
āĻ
āϏāĻŽā§āĻĒā§āϰā§āĻŖ āĻāĻžāĻ āϏāĻžāĻŽā§āĻŋāĻāĻāĻžāĻŦā§ āϞā§āĻāĻŋā§ā§ āϰāĻžāĻāĻžāĨ¤
āĻĒā§āϰāĻļā§āύ ā§Ē⧝: git stash pop āĻā§?
āĻāϤā§āϤāϰ:
Stash āĻāϰāĻž āĻāĻžāĻ āĻĢāĻŋāϰāĻŋā§ā§ āĻāύā§āĨ¤
āĻĒā§āϰāĻļā§āύ ā§Ģā§Ļ: Git tag āĻā§?
āĻāϤā§āϤāϰ:
Release version āĻāĻŋāĻšā§āύāĻŋāϤ āĻāϰāϤ⧠āĻŦā§āϝāĻŦāĻšā§āϤ āĻšā§āĨ¤
āĻĒā§āϰāĻļā§āύ ā§Ģā§§: Semantic versioning āĻā§?
āĻāϤā§āϤāϰ:
MAJOR.MINOR.PATCH
āĻĒā§āϰāĻļā§āύ ā§Ģ⧍: Git hooks āĻā§?
āĻāϤā§āϤāϰ:
Commit āĻŦāĻž push āĻāϰ āĻāĻā§ āĻ
āĻā§āĻŽā§āĻāĻŋāĻ script āĻāĻžāϞāĻžāύā§āĨ¤
āĻĒā§āϰāĻļā§āύ ā§Ģā§Š: Hotfix branch āĻā§?
āĻāϤā§āϤāϰ:
Production bug āĻĻā§āϰā§āϤ āĻ āĻŋāĻ āĻāϰāĻžāϰ branchāĨ¤
āĻĒā§āϰāĻļā§āύ ā§Ģā§Ē: Feature branch āĻā§?
āĻāϤā§āϤāϰ:
āύāϤā§āύ feature āĻĄā§āĻā§āϞāĻĒ āĻāϰāĻžāϰ āĻāύā§āϝ branchāĨ¤
āĻĒā§āϰāĻļā§āύ ā§Ģā§Ģ: Professional Git workflow āĻā§āĻŽāύ āĻšāĻā§āĻž āĻāĻāĻŋāϤ?
āĻāϤā§āϤāϰ:
- main â production
- develop â testing
- feature/* â new feature
- hotfix/* â urgent bug
āĻĒā§āϰāĻļā§āύ ā§Ģā§Ŧ: āĻāĻŋāĻ āĻ slash command āĻā§āύ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻāϰāĻž āĻšā§?
āĻāϤā§āϤāϰ:
Git-āĻ "slash command" āĻŦāϞāϤ⧠āϝāĻĻāĻŋ āĻāĻĒāύāĻŋ / āĻĻāĻŋā§ā§ āĻļā§āϰ⧠āĻšāĻā§āĻž āĻāĻŽāĻžāύā§āĻĄā§āϰ āĻāĻĨāĻž āĻŦāϞā§āύ (āϝā§āĻŽāύ /rebase, /merge, /assign āĻāϤā§āϝāĻžāĻĻāĻŋ), āϤāĻžāĻšāϞ⧠āĻāĻā§āϞ⧠Git āĻāϰ āĻŽā§āϞ āĻāĻŽāĻžāύā§āĻĄ āύā§, āĻŦāϰāĻ āĻāĻā§āϞ⧠āϏāĻžāϧāĻžāϰāĻŖāϤ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻšā§ GitHub, GitLab, Bitbucket āĻāϤā§āϝāĻžāĻĻāĻŋ platform-āĻāϰ issue, pull request, āĻāĻŦāĻ comment āϏā§āĻāĻļāύ⧠automation āĻŦāĻž bot trigger āĻāϰāĻžāϰ āĻāύā§āϝāĨ¤
Slash Command āĻāϏāϞ⧠āĻā§?
Slash command āĻšāϞ⧠/ āĻĻāĻŋā§ā§ āĻļā§āϰ⧠āĻšāĻā§āĻž āĻŦāĻŋāĻļā§āώ āĻāĻŽāĻžāύā§āĻĄ āϝāĻž CI/CD tools āĻŦāĻž bots (āϝā§āĻŽāύ: GitHub Actions, GitLab CI/CD, GitHub bots) āĻŦā§āĻāϤ⧠āĻĒāĻžāϰ⧠āĻāĻŦāĻ āĻā§āύ āĻāĻāĻāĻŋ āύāĻŋāϰā§āĻĻāĻŋāώā§āĻ āĻāĻžāĻ āĻāϰā§āĨ¤
āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻā§āĻĨāĻžā§ āĻšā§:
1. GitHub / GitLab Pull Request āĻ
/rebase
/merge
/test
/retry
āĻāĻ āĻāĻŽāĻžāύā§āĻĄāĻā§āϞ⧠āĻāĻŽā§āύā§āĻ āĻšāĻŋāϏā§āĻŦā§ āĻĻāĻŋāϞ⧠āĻā§āύ⧠bot āĻŦāĻž GitHub Action āĻā§āϰāĻŋāĻāĻžāϰ āĻšā§āĨ¤
2. Automation āĻ ChatOps āĻ
Slack āĻŦāĻž Discord-āĻāϰ āĻŽāϤ⧠āĻā§āϝāĻžāĻ āĻā§āϞ⧠GitHub āĻŦāĻž GitLab āĻāύāĻāĻŋāĻā§āϰā§āĻā§āĻĄ āĻĨāĻžāĻāϞ⧠/deploy āĻāĻžāĻāĻĒ āĻāĻŽāĻžāύā§āĻĄā§ āĻ
āĻā§ āĻĄāĻŋāĻĒā§āϞ⧠āĻļā§āϰ⧠āĻšāϤ⧠āĻĒāĻžāϰā§āĨ¤
āĻāĻĻāĻžāĻšāϰāĻŖ (GitHub context):
āϧāϰāĻž āϝāĻžāĻ āĻāĻĒāύāĻŋ āĻāĻāĻāĻŋ Pull Request āĻ /rebase āϞāĻŋāĻā§ āĻāĻŽā§āύā§āĻ āĻāϰāϞā§āύāĨ¤
āϝāĻĻāĻŋ āϏā§āĻāĻžāύ⧠GitHub bot āϏā§āĻāĻāĻĒ āĻāϰāĻž āĻĨāĻžāĻā§ āϝ⧠/rebase āĻĻā§āĻāϞ⧠git rebase āĻāĻžāϞāĻžāĻŦā§ â āϤāĻžāĻšāϞ⧠āĻāĻ āĻāĻžāĻāĻāĻŋ āĻ
āĻā§āĻŽā§āĻā§āĻĄāĻāĻžāĻŦā§ āĻšāĻŦā§āĨ¤
āĻā§āύ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻāϰāĻž āĻšā§?
- Manual āĻāĻžāĻ āĻāĻŽāĻžāύā§āϰ āĻāύā§āϝ
- CI/CD pipeline trigger āĻāϰāĻžāϰ āĻāύā§āϝ
- Code review āĻŦāĻž merge process āĻĻā§āϰā§āϤ āĻāϰāĻžāϰ āĻāύā§āϝ
- ChatOps integration āĻāϰ āĻāύā§āϝ
āĻā§āϰā§āϤā§āĻŦāĻĒā§āϰā§āĻŖ āĻāĻĨāĻž:
āϝāĻĻāĻŋ āĻāĻĒāύāĻžāϰ āĻĒā§āϰāĻāϞā§āĻĒā§ bot āĻŦāĻž CI/CD pipeline āĻ āĻāĻ āĻāĻŽāĻžāύā§āĻĄāĻā§āϞā§āϰ āϏāĻžāĻĒā§āϰā§āĻ āύāĻž āĻĨāĻžāĻā§, āϤāĻžāĻšāϞ⧠/command āĻāĻžāĻāĻĒā§āϰ āĻāĻŋāĻā§ āϞā§āĻāĻžāϰ āĻā§āύ⧠āĻĒā§āϰāĻāĻžāĻŦ āĻĨāĻžāĻāĻŦā§ āύāĻžāĨ¤
āĻĒā§āϰāĻļā§āύ ā§Ģā§: āĻāĻŋāĻ āĻ 2 āĻāύ āĻāĻāĻāĻžāϰ āĻāϰ āĻā§āĻĄ (⧍ āĻāĻž āĻāϞāĻžāĻĻāĻž āĻŦā§āϰāĻžāĻā§āĻ) āĻŽā§āĻāύ āĻŦā§āϰāĻžāĻā§āĻ āĻ āĻŽāĻžāϰā§āĻ āĻāϰāĻŦā§ āĻāĻŋāĻāĻžāĻŦā§?
āĻāϤā§āϤāϰ:
Git-āĻ āĻĻā§āĻāĻāύ āĻāĻāĻāĻžāϰā§āϰ āĻā§āĻĄ (āϝāĻžāϰāĻž āĻĻā§āĻāĻāĻŋ āĻāϞāĻžāĻĻāĻž branch āĻ āĻāĻžāĻ āĻāϰā§āĻā§āύ) main branch āĻ merge āĻāϰāĻžāϰ āĻāύā§āϝ āύāĻŋāĻā§āϰ āϧāĻžāĻĒāĻā§āϞ⧠āĻ āύā§āϏāϰāĻŖ āĻāϰāϤ⧠āĻĒāĻžāϰā§āύ:
āϧāϰā§āύ:
-
user1āĻāĻžāĻ āĻāϰā§āĻā§āύfeature/user1-logināĻŦā§āϰāĻžāĻā§āĻā§ -
user2āĻāĻžāĻ āĻāϰā§āĻā§āύfeature/user2-dashboardāĻŦā§āϰāĻžāĻā§āĻā§ - āĻāĻāύ āĻāĻĒāύāĻžāĻā§ āĻāĻ āĻĻā§āĻāĻāĻŋ āĻŦā§āϰāĻžāĻā§āĻ
main-āĻ merge āĻāϰāϤ⧠āĻšāĻŦā§āĨ¤
Step by Step merging process:
1. āĻĒā§āϰāĻĨāĻŽā§ āĻāĻĒāύāĻžāϰ āϞā§āĻāĻžāϞ āϰāĻŋāĻĒā§āĻāĻŋāĻāϰāĻŋ āĻāĻĒāĻĄā§āĻ āĻāϰā§āύ
git fetch origin
2. main āĻŦā§āϰāĻžāĻā§āĻā§ āϝāĻžāύ
git checkout main
3. āϏāϰā§āĻŦāĻļā§āώ āĻāĻĒāĻĄā§āĻ āύāĻŋāύ
git pull origin main
4. āĻĒā§āϰāĻĨāĻŽ āĻŦā§āϰāĻžāĻā§āĻ āĻŽāĻžāϰā§āĻ āĻāϰā§āύ
git merge feature/user1-login
āϝāĻĻāĻŋ āĻāύāĻĢā§āϞāĻŋāĻā§āĻ āύāĻž āĻĨāĻžāĻā§:
git push origin main
āϝāĻĻāĻŋ āĻāύāĻĢā§āϞāĻŋāĻā§āĻ āĻĨāĻžāĻā§:
- āĻĢāĻžāĻāϞāĻā§āϞ⧠āĻāĻĒā§āύ āĻāϰ⧠āĻāύāĻĢā§āϞāĻŋāĻā§āĻ āĻŽā§āϝāĻžāύā§ā§āĻžāϞāĻŋ āĻ āĻŋāĻ āĻāϰā§āύ
- āϤāĻžāϰāĻĒāϰ:
git add .
git commit
git push origin main
5. āĻāϰāĻĒāϰ āĻĻā§āĻŦāĻŋāϤā§ā§ āĻŦā§āϰāĻžāĻā§āĻ āĻŽāĻžāϰā§āĻ āĻāϰā§āύ
git merge feature/user2-dashboard
āĻāĻŦāĻžāϰ āĻāĻāĻāĻāĻžāĻŦā§:
- āĻāύāĻĢā§āϞāĻŋāĻā§āĻ āĻĨāĻžāĻāϞ⧠āĻ āĻŋāĻ āĻāϰā§āύ
- āύāĻž āĻĨāĻžāĻāϞ⧠āϏāϰāĻžāϏāϰāĻŋ push āĻāϰā§āύ:
git push origin main
āĻŦāĻŋāĻāϞā§āĻĒāĻāĻžāĻŦā§ (Pull Request āĻĻāĻŋā§ā§ Merge)
āϝāĻĻāĻŋ āĻāĻĒāύāĻŋ GitHub / GitLab āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻāϰā§āύ, āϤāĻžāĻšāϞā§:
-
feature/user1-logināĻĨā§āĻā§ Pull Request (PR) āĻā§āϞā§āύ â main āĻ merge āĻāϰā§āύ - āĻāϰāĻĒāϰ
feature/user2-dashboardāĻĨā§āĻā§ āĻāϰā§āĻāĻāĻŋ PR āĻā§āϞā§āύ â main āĻ merge āĻāϰā§āύ
āĻāϤ⧠Git āϏā§āĻŦā§āĻāĻā§āϰāĻŋā§āĻāĻžāĻŦā§ āĻāύāĻĢā§āϞāĻŋāĻā§āĻ detect āĻāϰāĻŦā§ āĻāĻŦāĻ āĻĻā§āĻāĻžāĻŦā§āĨ¤
āĻāĻĒāϏāĻāĻšāĻžāϰ:
- āĻĻā§āĻāĻāĻŋ āĻŦā§āϰāĻžāĻā§āĻ āĻāϞāĻžāĻĻāĻžāĻāĻžāĻŦā§
maināĻ merge āĻāϰāϤ⧠āĻšāĻŦā§, āĻāĻāĻŦāĻžāϰ⧠āĻĻā§āĻā§ āύā§āĨ¤ - āĻĒā§āϰāϤāĻŋāĻāĻŋ merge āĻāϰ āϏāĻŽā§ āĻāύāĻĢā§āϞāĻŋāĻā§āĻ āĻāϏāϞ⧠āĻŽā§āϝāĻžāύā§ā§āĻžāϞāĻŋ resolve āĻāϰāϤ⧠āĻšāĻŦā§āĨ¤
- GitHub āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻāϰāϞ⧠Pull Request āĻ review process āϏāĻšāĻ āĻāϰ⧠āĻĻā§ā§āĨ¤

Top comments (0)