I'm assuming you're all setup. If not, please do the following
Register for a GitHub account
Download and install GitKraken
You could argue it would be better to focus on the command line interface.
Most people have an easier time grasping the concepts of git (like branching) when there's a visual interface
GitKraken allows you to do 95%+ of the work you need to do without moving to the CLI
If you are starting a new project and you're going to use version control, I suggest going GitHub first
Create a new empty repo on Github
Clone the repo locally
Start your project (i.e., RStudio Projects)
Commit your initial changes
Push the changes to the remote
Super powerful approach to collaborating with git. Essentially create a copy of the repo at a given point.
Create and checkout a new branch.
Make changes and commits on the branch, which frees you up to play and experiment without fear of "breaking" the main branch
Push the branch to the remote
When you're ready, submit a pull request to merge the branch with the main branch
Note - any changes on the branch will not be visible if you don't have that branch checked out
Submit a PR for a branch when you're ready
Consider tagging others to review the changes before they are merged in
Link the PR to any relevant Issues.
Consider adding labels (e.g., bug fix, enhancement)
Similar process to branching, with a few major differences:
You don't have to be (and shouldn't be) a direct collaborator
You copy the entire repo to your account
If you want your changes implemented, you must submit a pull request (you can't contribute to the repo directly unless you're a collaborator) and compare across forks
When working across multiple branches, you might find yourself occassionally making edits on the wrong branch
You can't commit those changes, but you don't want to lose them either
Stashing allows you to basically create a temporary branch, store the changes there, then "pop" them on the correct branch
Create a repo
Add collaborators
Always pull before starting new work
Always commit all changes before finishing your work
File Issues to track work that should be completed
Use branches to create new changes
Submit pull requests when the work on a given branch is complete, and link it to the corresponding issue
Keyboard shortcuts
↑, ←, Pg Up, k | Go to previous slide |
↓, →, Pg Dn, Space, j | Go to next slide |
Home | Go to first slide |
End | Go to last slide |
Number + Return | Go to specific slide |
b / m / f | Toggle blackout / mirrored / fullscreen mode |
c | Clone slideshow |
p | Toggle presenter mode |
t | Restart the presentation timer |
?, h | Toggle this help |
Esc | Back to slideshow |