angular-course | Angular Core Deep Dive (Video Course) - https://angular-universityio/course/angular-course | Reactive Programming library
kandi X-RAY | angular-course Summary
kandi X-RAY | angular-course Summary
Angular Core Deep Dive (Video Course) -
Support
Quality
Security
License
Reuse
Top functions reviewed by kandi - BETA
Currently covering the most popular Java, JavaScript and Python libraries. See a Sample of angular-course
angular-course Key Features
angular-course Examples and Code Snippets
Community Discussions
Trending Discussions on angular-course
QUESTION
I am not so into GIT and I am finding the following problem using GIT on my Ubuntu machine.
I clone this repository from GitHub: https://github.com/angular-university/reactive-angular-course/tree/1-start
Then I entered into the cloned project directory. Now I want to see the list of all the branches so I perforemd this command:
...ANSWER
Answered 2020-Oct-16 at 15:43Cloning a repository copies all 1 of its commits, and none of its branches.2 You don't need branches to have commits.3
After the clone is finished but before returning you to a shell prompt, git clone
runs one git checkout
; this one git checkout
creates one branch. You can go on to create more branches, or—at least for some purposes—just use the names that git clone
created, which aren't branch names, but are perfectly good names.
The names that git clone
creates are remote-tracking names. If the remote named origin
had branches named main
, feature/tall
, and feature/short
, the clone has names origin/main
, origin/feature/tall
, and origin/feature/short
.
The final git checkout
step takes one of those names and uses it to create a branch name.4 The name chosen here is from your -b
parameter to git clone
. If you didn't give a -b
parameter here, your Git asks the other Git, during the clone process, which name it recommends, and uses that one.
These remote-tracking names show up in git branch -r
output. They're not actually branch names, they were just created from branch names, but if all you need is the name, they'll do the job.
1Technically it copies only the reachable commits. But you can't find the unreachable ones, so you can't tell that it didn't copy them.
2A so-called mirror clone does copy all of its branches. You cannot do any new work in a mirror clone, though.
3You do need names to find the commits, but they need not be branch names.
Curiously, the converse is true: you must have at least one commit to have any branch names. In fact, you must have at least one commit or other internal Git object in order to have any name that is not a symbolic name. (Symbolic names are those that act like HEAD
: that hold some other name, typically a branch name. HEAD
is normally the only symbolic name you'll see, in part because other symbolic names don't work very well in some versions of Git.)
4This is, internally at least, called DWIM mode, with DWIM standing for Do What I Mean (not what I say). That is, you asked git checkout
to check out some branch X when branch X does not exist. Rather than immediately giving you an error, git checkout
pokes around through your remote-tracking names, looking for an origin/X
for instance. If it finds exactly one candidate that looks right, it converts your request to switch to an existing branch, into a request to create a new branch, whose branch-tip-commit is the same commit as the one identified by the remote-tracking name.
It is all very elegant and confusing. 😀 Once you get used to it, it's pretty useful. Then it all breaks when you add a second remote and there are now two remote-tracking names that look like good candidates. Git has recently grown some new facilities to handle this case better, but until you understand DWIM mode in the first place, adding this on will just make things really confusing.
Community Discussions, Code Snippets contain sources that include Stack Exchange Network
Vulnerabilities
No vulnerabilities reported
Install angular-course
We can install the master branch using the following commands:.
Support
Reuse Trending Solutions
Find, review, and download reusable Libraries, Code Snippets, Cloud APIs from over 650 million Knowledge Items
Find more librariesStay Updated
Subscribe to our newsletter for trending solutions and developer bootcamps
Share this Page