Skip to content

Latest commit

 

History

History
83 lines (74 loc) · 2.54 KB

README.md

File metadata and controls

83 lines (74 loc) · 2.54 KB

ACMGitWorkshop

This repository is for the ACM Git Version Control Workshop. The workshop will be demonstrated by Kyle Fiala, an MSUM Alumni and Software Engineer on February 27th and 28th, 2019.

Initial Aspects (02-26-2019)

Why does git matter?

  • Git increases reliability of the following aspects:
    • Repository reliability
    • Development consistency
    • Conflict Resolution
    • Team work

By allowing developers to snapshot code Git is increasing the reliability of repositories, consistency of development, resolution of conflicts, and team work. Git takes a lot of the mundane work out of updating versions in a code repository. Before version control large sections of source code were uploaded to a central repository or saved on a hard drive and had no sense of what had been added or changed. With Git repositories know exactly what was changed by calculating the difference between snapshots or versions. This knowledge of change helped increase development consistency by allowing developers to see what had been added or removed from previous versions. This ability to detect differences also allows developers to resolve conflicts in the code. These conflicts can range from one attribute having a different name, and thus referenced under the different name, to whole file structures being named differently. This ability to resolve conflicts created a more productive environment. Git points out what is different and where when dealing with conflict resolution, in the past before Git developers would have to sit down and follow through the execution and implementation to find out what had been added or removed and address it.

How often is it used in the field?

As of today, nearly every company uses Git or some type of version control. The developers at these companies use Git everyday, multiple times a day, in order to maintain a reliable code base and collaborate with other developers.

List of useful commands:

git config user.name <name>
git config user.email <email>
git add
git commit
git commit -m "<message>"
git push
git pull
git fetch
git reset
git status
git show
git stash
git stash pop
git branch
git checkout
git remote

More information can be found on the Git Reference page here

TODO

  • Creating a Repo
  • Conflict Resolution
  • Possibly talk briefly about other version control software like TFS?