Ubuntu16.04上使用git

各系统git的使用除了安装方式不一样,基本都同样,本文记录的是Ubuntu16.04上使用gitgit

首先要区分git和github的区别:github

Git是分布式版本控制系统,也指基于命令行的版本管理工具
github是个网站,用于远程托管你的项目,至关于云盘web

在使用git前先去github注册一个本身的帐户,邮箱,用户名,密码在之后都会使用到,不要乱填,也不要忘记。
面对纯英文的网站,可能你会感受很懵,暂且不用管,咱们经常使用的功能并很少,等你熟悉之后就会以为so easy
很详细,囊括了几乎全部git的知识。面对这些命令,可能你会感受有点恐惧,告诉本身,全部的恐惧都是由于本身不熟悉,等你熟悉以后一切都是很简单的。在这里,不用刻意去记住每一个命令,理解git一些名词的概念和工做原理,经常使用命令的含义就能够了。最好的学习办法是跟着教程本身作一遍。
在弄懂了git中重要概念时,为了方便使用,可使用图形化工具了,Windows可使用source Tree,固然不少开发工具都集成了git,这里暂不作过多介绍。
本文重点是讲Ubuntu下如何初始化git仓库并关联到github上
1.git安装
在Ubuntu下随便打开终端输入:
sudo apt-get install git
命令便可完成安装
安装完成后,在命令行输入:
git config --global user.name "Your Name"
git config --global user.email "email@example.com"

配置git帐号,此处的用户名和邮箱便是在github上注册的用户名和使用邮箱,注意改为本身的名字和邮箱shell

2.建立仓库ruby

能够新建个空文件夹或在已有项目的根目录下打开终端,执行以下 git init 命令初始化仓库,结果以下:ssh

git init
初始化空的 Git 仓库于 /home/jieker/work/parking_web/parking/trunk/.git/

此处的trunk即时托管的项目,执行完以上命令项目文件夹会多出个.git目录,若是看不到,表示隐藏了,按Ctrl+h键显示分布式

本地git仓库就完成了ide

3.创建ssh连接工具

本地Git仓库和GitHub仓库之间的传输是经过SSH加密的,全部先建立ssh密钥,执行命令:学习

ssh-keygen -t rsa -C "youremail@example.com"

注意改为本身的邮箱,执行玩该命令后即会在用户目录下生成 .ssh 目录,若是没看到,表示隐藏了,按Ctrl+h键显示

进入改目录,能够看到有两个文件:id_rsa和id_rsa.pub。id_rsa是私钥,id_rsa.pub是公钥。

接下来要把公钥加到github上

用gedit或其它工具打开id_rsa.pub,全选复制里面的内容

登陆github,点左上角下拉选的settings

而后选择 SSH and GPG keys,出现以下界面

点左上角New ssh key,把公钥文件的内容复制进去,保存就能够了

输入 ssh -T git@github.com 命令进行测试

ssh -T git@github.com
The authenticity of host 'github.com (52.74.223.119)' can't be established. RSA key fingerprint is SHA256:nThbg6kXUpJWGl7E1IGOCspRomTxdCARLviKw6E5SY8. Are you sure you want to continue connecting (yes/no)?

输入yes按回车,出现如下提示代表成功

Hi jieker! You've successfully authenticated, but GitHub does not provide shell access.

4.本地git仓库关联远程github仓库

在github上创建和本地仓库同样名字的仓库

用命令:git remote add origin 把本地库和远程库关联

git remote add origin git@github.com:jieker/trunk.git

此处没提示,git不少时候没提示就表明成功

在终端进入本地仓库目录

若是是空目录,能够加点文件

查看当前项目更改状态:

git status

把更改加入暂存区:

git add .

提交更改:

git commit -m "第一次提交"

推送到远程github仓库

git push -u origin master

首次推送须要加 -u,有时候会提示你输入密码,输入按回车便可

一切顺利的话就到此结束了

附git团队协做的工做流程

git支持不少种工做流程,咱们采用的通常是这样,远程建立一个主分支dev,本地每人建立功能分dev_youName支,平常工做流程以下:
去本身的工做分支
$ git checkout work
工做
....
提交工做分支的修改
$ git commit -a
回到主分支
$ git checkout master
获取远程最新的修改,此时不会产生冲突
$ git pull
回到工做分支
$ git checkout work
用rebase合并主干的修改,若是有冲突在此时解决
$ git rebase master
回到主分支
$ git checkout master
合并工做分支的修改,此时不会产生冲突。
$ git merge work
提交到远程主干
$ git push
这样作的好处是,远程主干上的历史永远是线性的。每一个人在本地分支解决冲突,不会在主干上产生冲突。
不管是使用命令行仍是图形化工具,思路基本是这样

本文主要是简单的介绍了git的使用,git的内容说多也很少,主要要多使用。

相关文章
相关标签/搜索