6. Git vs Github/Gitlab Gitlab/Github are Git repository manager with
functionality:
- Issue tracking
- Repository CRUD
- Other advance things
7. Key Benefit Can prioritize features
Copy of code is always there
Helps in Collaboration
8. Git Branch
A branch in Git is simply a lightweight movable pointer to one of these commits. The default branch name in Git is
master.
9. Branch Modal for Us
Stage
Stage branch,
here Client do the
QA
Dev
Development
branch where
Developer do
the unit testing
Test
Test branch
where our QA
does the testing
Live
Product is made
live here
Benefit of version control are enormous. Can help in reverting the features or prioritizing the feature
Version control software allows you to have “versions” of a project, which show the changes that were made to the code over time, and allows you to backtrack if necessary and undo those changes. This ability alone – of being able to compare two versions or reverse changes, makes it fairly invaluable when working on larger projects.
Clone – Making a copy of a Git repository from one location to another, usually from a remote machine to your local one.
Push / Pull – Push is merging code from your local repo to a remote. Pull is the inverse, merging code from a remote repo into your local one.
Pull Request – A pull request is a workflow where a developer is done with a change and is requesting that his code be pulled into the main line. With the GUI tools, this process is facilitated with some form of code review process.
Checkout – This is one term that I found confusing with git for some reason. Checking out basically means you are changing your current directory structure to match a specific commit/branch/etc.
Rebasing – Rebasing is moving one a branch from one base location to another. The Atlasssian tutorials have a great comparison on when to use rebasing vs. merging HERE. The ‘golden rule’ of rebasing is to never use it on public repositories.
Commit – Committing is taking your local file modifications and committing them to the official repository record.
Remote – A remote is a connection to a remote repository. This is usually the public repo that everyone else on the team is working from.
Origin – Origin is an alias for a repository where you originally cloned from.
Master – Master is a branch name, usually the main one that you branch from. Master is equivalent to a trunk in other version control systems.