GitHub命令行操作

来源:互联网 发布:300英雄淘宝四周年 编辑:程序博客网 时间:2024/06/06 01:45

声明:本文参考廖雪峰git教程。

- 远程仓库

  • 创建远程库

去github上,点击“Create repository”创建一个新的repository。现在github上的这个仓库还是空的,从提示可以看到,github允许我们从这个仓库克隆出新的仓库,也可以把一个已有的本地仓库与之关联,然后再把本地仓库的内容推送到github上。这里,我选择后者。到自己本地要创建仓库的文件夹,输入命令行:

git init
git remote add origin git@github.com:username/reposname.git
git push -u origin master

远程库的名字就是origin,是git默认的叫法。git push命令把本地库的内容推送到远程,实际上是把当前分之master推送到远程。-u参数,是由于远程库是空的,第一次推送master分支,使用-u,git不但会把本地的master分支内容推送的远程新的master分支,还会把本地的master分支和远程的master分支关联起来,在以后的推送或者拉取时就可以简化命令。

  • 克隆远程库

克隆github上已有的库到本地,到本地git目录:

git clone git@github.com:username/reposname.git
cd reposname

查看已经克隆好的文件。git支持https和ssh等协议,使用https的问题是:速度慢,最重要的是每次推送都必须输入口令。但是在某些只开放http端口的公司内部就无法使用ssh协议而只能用https

- 分支管理

在git里,只有一条时间线,叫主分支(master分支)。HEAD指向master,确定当前分之和当前分之的提交点, master指向新的提交。每次提交,master分支就会向前移动一步,这样随着不断提交,master分支线越来愈长。

创建新的分支如new时,git新建一个指针new,指向master相同的提交,再把HEAD指向new,就表示当前分支在new上,此时,master指针不变。合并时,直接把master指向new的当前提交,就完成了合并;合并后,可以删除new指针,删除后,就只剩下master分支了。

创建新分支new

git checkout -b new

-b表示创建并切换,相当于:

git branch new
git checkout new

查看当前分支:

git branch

“*”表明是当前分支。
提交新版本:

git add filename
git commit -m “branch test”

切换回master分支,把new分支合并到master分支,

git checkout master
git merge new

Fast-forward表示是“快进模式”, 也就是直接把master指向new的当前分支,所以合并速度非常快。删掉new分支,

git branch -d new

下面查看所有分支就只有master分支了。

0 0
原创粉丝点击