Git records snapshots of a project so changes can be reviewed and recovered. A working tree contains current files; staging selects what will enter the next commit. Inspect a diff before committing. A commit should describe a coherent change, not simply everything modified during the day.
A branch names a line of development. Merging combines histories and can require resolving conflicting edits. Resolve the actual intended behavior, then run relevant checks; removing conflict markers is not sufficient. Keep secrets, local environments, and generated caches out of version control.
Practice a review that explains the problem, change, tests, and limitations. A small reproducible fix is easier to review than an unexplained rewrite.
Exercise: create a local repository, commit a working script, change it on a branch, and inspect the diff. Introduce a conflicting edit in a disposable practice repository and resolve it.
Check: you can explain working, staged, and committed changes and show that the resolved program still behaves correctly.