-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathlesson_3_reflections.txt
30 lines (22 loc) · 2.11 KB
/
lesson_3_reflections.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
Q: When would you want to use a remote repository rather than keeping all your work local?
A: When working on a project with other programmers who don't have access to your local machine
and are remote or are working on the same project from their individual machines.
Q: Why might you want to always pull changes manually rather than having Git automatically stay up-to-date with your remote repository?
A: Because in cases the project is collaborative: if GitHub were to automatically update my local repository it could potentially get
really messy and I would loose track of what my own work.
Q: Describe the differences between forks, clones, and branches. When would you use one instead of another?
A: Forks are clones of remotes on GitHub. Forking means cloning a repository from another GitHub user.
Clones can either be on within GitHub (forks), from GitHub to a local machine through GitBash, from
a local machine to GitHub via the push method, or they can happen locally. Branches are versions of the
same code that have been grouped under a given name.
Q: What is the benefit of having a copy of the last known state of the remote stored locally?
A: Keeps things organized! Once I work on my repository locally, keeping a copy of the last known
state of the remote will ensure that the system knows what to update next time I fetch/pull/push
Q: How would you collaborate without using Git or GitHub? What would be easier, and what would be harder?
A: Easier - GitHub needs a learning curve; takes time and effort, which not everyone collaborating on
projects might be willing to invest. Harder - Git and GitHub do a nice job of organizing and visualizing
the progress of a project, leave room for error and experimentation and optimize workflow. It would be
much harder to keep track of a complex, ongoing project with many alterations or versions without Git.
Commands learned in lesson 3:
- git remote add [remote-name] [url] --- adds a new remote with the given name and clones the repository of the given URL
- git pull [remote-name] [branch-name] --- pulls the branch with given branch name into the remote with given remote name