-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathGitNotes.tex
36 lines (26 loc) · 2.65 KB
/
GitNotes.tex
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
\documentclass{article}
\begin{document}
\section{What is Git?}
Git is a version control system. Everyone working on a project has a copy of the full history of the project and not just the current state of the files.
\section{What is GitHub?}
GitHub is a website where you can upload a copy of your Git repository.
\section{Why use Git?}
\begin{enumerate}
\item Ability to undo changes.
\item Documentation of why changes were made
\item Multiple streams of history (through creating different branches)
\item Independent streams of history. Multiple people can work on the same file at the same time and merge files together when they're done.
\end{enumerate}
\section{Why use GitHub?}
\begin{enumerate}
\item You can either document bugs or specify new features that you’d like to have your team develop
\item Using \textit{branches} and \textit{pull} requests, you can collaborate on different branches or features.
\item By looking at a list of \textit{pull} requests, you can see all of the different features that are currently being worked on, and by clicking any given pull request, you can see the latest changes as well as all of the discussions about the changes.
\item Skimming the \textit{pulse} or looking through the commit history allows you to see what the team has been working on.
\end{enumerate}
\section{issues}
\begin{itemize}
\item It is important to understand how Git thinks about folders - it doesn’t! Git is concerned only with files. As far as it is concerned, folders are simply a place to store those files. Because of that, there is no way to add a folder to a project unless it includes at least one file. Sometimes this is a problem. For example, in many software projects there needs to be a /build folder where automatically generated files will be saved when compiling the software. With some systems, if you don’t have such a folder, you’ll be unable to use the project. A common pattern that has emerged is to create an empty file called .gitkeep in any folder that you need to create but that doesn’t really need to have any files. It seems a bit strange, but it works well and it is a well-understood convention, so if you ever need to create a folder, just create a .gitkeep file
\item Currently, GitHub doesn’t allow you to rename folders or to make any other changes to more than one file in a single commit. It also doesn’t give you the power of Git to rewrite history, and it doesn’t allow you to resolve conflicts online, so if there is a pull request that conflicts with another change, someone is going to have to download (clone) a copy of the repo, fix the changes, and push them back up to GitHub.
\end{itemize}
\end{document}