-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathlesson_2_refelctions.txt
32 lines (18 loc) · 1.97 KB
/
lesson_2_refelctions.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
What happens when you intialize a repository? Why do you need to do it?
I think that several files are created when I first initialize my repository. This files may be used to let my repository be known outside my computer and by git program indeed.
I consider that this has to be done since otherwise my directory won't be able to provide all advantages git involves.
How is the staging area different from the working directory and the repository? What value do you think it offers?
Staging area is like an intermidiate between your current file and the snapshot of your commit. It is important since one can wish, on behalf of design or something else, to commit some files first and then some others.
How can you use the staging area to make sure you have one commit per logical change?
I can compare files in staging area with files in my working directory and figure out if all those that are currently in stage area can be considered as the ones involved in a logical change
What are some situations when branches would be helpful in keeping your history organized? How would branches help?
When experimenting with new features you wish to add to your project. Branches would help by always keeping track of more stable versions where those added features there were not.
How do the diagrams help you visualize the branch structure?
By doing this I can have a whole idea of how my project is distributed with only one glance.
What is the result of merging two branches together? Why do we represent it in the diagram the way we do?
The result is a new commit. And we represent this operation by connecting two (or more) branches to a new node (the new commit), because we can say that node has a parent-child relationship with all brnaches involved in merging operation
What are the pros and cons of Git’s automatic merging vs. always doing merges manually?
Pros
When there are not conflicts you save time by mergint automatically
Cons
You have more control by doing merges manually