-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathlesson_3_reflection_prompts.txt
44 lines (32 loc) · 2.39 KB
/
lesson_3_reflection_prompts.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
31
32
33
34
35
36
37
38
39
40
41
42
43
44
When would you want to use a remote repository rather than keeping all your work
local?
1. When collaborating with colleagues on a shared project.
2. When interacting with the repository from different machines (which all need to be synchronized).
3. When I'm paranoid and I want to back up my repository on-line.
Why might you want to always pull changes manually rather than having Git
automatically stay up-to-date with your remote repository?
Pulling changes advances the branch label to the latest commit and may introduce modifications
to the current working-directory version of the files. If we are in the process of editting a file,
we would not like to be interrupted by a pull operation which may imply a merge must be performed.
Describe the differences between forks, clones, and branches. When would you
use one instead of another?
Forks are used to copy an existing repository from another person's profile to my own.
Clones are used to copy over a repository from a remote site like GitHub or from a local
path to a different local path.
Branches are used to label commits that represent a certain version of the project and its
history.
What is the benefit of having a copy of the last known state of the remote
stored locally?
This allows one to consider the changes made remotely and merge them into the local version.
How would you collaborate without using Git or GitHub? What would be easier,
and what would be harder?
I would probably send e-mails. It would be easier because there's no new API which is necessary to master.
It would be way harder to navigate the progress and finding older versions or merging local and remote versions
because e-mails get very messy when discussing code...
When would you want to make changes in a separate branch rather than directly in
master? What benefits does each approach have?
Apart from the examples we saw before (using branches for a separate version of the project), branches are useful
when working in a collaboration with someone: A new branch should be added for a modification/feature that the
developer is introducing, then the developer should merge the latest version of master into the tip of his new
branch and create a pull request to be reviewed by the team-lead/project-manager/etc. When the pull request is approved,
the new branch should be merged back into master and thus the development cycle completes...