git与github有什么区别呢?

  1. git(工具)是一个版本控制工具
  2. github(社区)是一个用git做版本控制的项目托管平台,并附带交友分享功能。。类似的平台还有bitbucket、oschina的码云这里写图片描述(逗逼名字)。 这些平台基本都是以开源项目著称的,当然也提供一定的收费私有化托管服务。 当然(私有化),估计大家还听说过coding、gitlab、gogs,这些都是做一些私有化项目托管的平台。gitlab、gogs都是开源的git托管平台,可以自己私有化部署。

git和svn的区别

  1. svn是一个中心化的版本控制工具
  2. git是一个去中心化的分布式版本控制工具

使用GitHub

1.注册账号

使用github首先得 注册个账号,具体的流程就不演示了

2.新建仓库

点击New Repository菜单,进入创建仓库界面,下面的内容请看仔细:
github新建仓库
github新建仓库

Github 创建公钥 SSH key

1.生产新的SSH key:(邮箱替换为自己注册github的注册邮箱)

ssh-keygen  -t   rsa   -C  "853089986@qq.com"

2.将生产好的key添加到github

  1. 登陆到你的Github,进入settings
  2. 如下如操作
    增加key
    增加key
  3. title:可以顺便填名字
    key:在Key文本框里粘贴id_rsa.pub文件的内容
    点击 add ssh key 配置完成

3.测试是否配置成功

ssh -T git@github.com
#配置成功标志
#Hi xxxxxx!You've successfully authenticated,but Gitub does not provide shell access.

使用git在本地建立的项目更新到Github

Git设置提交代码时的用户信息:

git config --global user.name "xxxxxx"
git config --global user.email "xxxxxx@qq.com"

创建 git 仓库:

mkdir test    # 首先在本地新建文件夹
cd test # 进入这个文件夹
git init # 在当前目录初始化一个git仓库
//git init [project-name] 新建一个目录,将其初始化为Git代码库
touch README.md
git add README.md
git commit -m "first commit"
git remote add origin https://..../test.git //将git本地仓库和Github远程仓库关联
git push -u origin master

已有项目

cd exist_git_demo
git remote add origin https://..../test.git
git push -u origin master

其中origin代表的是你远程的仓库

修改仓库名

一般来讲,默认情况下,在执行clone或者其他操作时,仓库名都是 origin 如果说我们想给他改改名字,比如我不喜欢origin这个名字,想改为 oschina 那么就要在仓库目录下执行命令:

git remote rename origin oschina

这样 你的远程仓库名字就改成了oschina,同样,以后推送时执行的命令就不再是 git push origin master 而是 git push oschina master 拉取也是一样的

添加一个仓库

在不执行克隆操作时,如果想将一个远程仓库添加到本地的仓库中,可以执行

git remote add origin 仓库地址

注意:

  1. origin是你的仓库的别名 可以随便改,但请务必不要与已有的仓库别名冲突
  2. 仓库地址一般来讲支持 http/https/ssh/git协议,其他协议地址请勿添加

查看当前仓库对应的远程仓库地址

git remote -v

这条命令能显示你当前仓库中已经添加了的仓库名和对应的仓库地址,通常来讲,会有两条一模一样的记录,分别是fetch和push,其中fetch是用来从远程同步 push是用来推送到远程

修改仓库对应的远程仓库地址

git remote set-url origin 仓库地址

公有库开发过程

  • fork仓库
    • 通常fork公有库的Master分支作为当前的开发分支
  • 提交pr
  • pr审核
  • pr合并

fork仓库 -> 提交pr -> pr审核 -> pr合并

1 2
克隆仓库 git clone https://…..git
切换到dev分支 git checkout dev
创建分支 git checkout -b [new-feature]
提交分支 git push origin [new-feature]
本地分支合并 查看分支:git branch
创建分支:git branch
切换分支:git checkout
创建+切换分支:git checkout -b
合并某分支到当前分支:git merge
删除分支:git branch -d