我是Git hub的新手,我对标签和分支的概念感到困惑(解释here) 我想从git hub获得一个稳定版的PhantomJS(版本2.1.0)。但我不明白我是否应该这样做:
git checkout master
git remote add upstream https://github.com/ariya/phantomjs.git
git fetch upstream
git rebase --onto tags/2.1.0 upstream/master master
或
git init
git remote add -t 2.1 -f origin https://github.com/ariya/phantomjs.git
git checkout 2.1
请您解释一下,为什么?
答案 0 :(得分:5)
您应该只是克隆存储库,然后签出标记:
$ git clone https://github.com/ariya/phantomjs.git
$ cd phantomjs
$ git checkout 2.1
请记住,在标记上,您不能提交任何本地更改。为此,你必须在一个分支上。令人困惑的是,对于分支和标记,命令都是git checkout
。
答案 1 :(得分:1)
我不确定我是否理解你的问题,但我会尽力回答:
Git存储有关代码中所做的所有更改的数据(包括有关分支和标记的数据) 克隆存储库时,您将获得该存储库的完整历史记录
因此,git clone https://github.com/ariya/phantomjs.git
将克隆项目
如果你有分叉项目,你可以做
git clone https://github.com/<YOUR_USERNAME>/phantomjs.git
现在将目录更改为phantomjs:cd phantomjs/
要查看历史记录,您可以执行git log
或git log --oneline --decorate --graph
以获得更漂亮的视图
列出存储库执行的所有标签
git tag
最后,用tab 2.1.0创建分支执行
git checkout 2.1.0 -b v2.1.0
在此之后,您将有两个分支master
和v2.1.0
我希望这会有所帮助