github 入门

1 注册github 账号后登陆。

2 创建一个新的项目 , 点击Github 首页的右下角 ”New repository“ 按钮

填写你的项目名和项目的描述,点击”Create repository“ 按钮创建

3 给github 配置ssh 信任关系。

Linux 环境要先生成 公钥和秘钥

ssh-keygen 

一直回车就可以了,它会在当前用户的HOME 目录下生成 .ssh 目录

cat  /root/.ssh/id_rsa.pub

cat 一下公钥 ,将公钥信息保存在github 的ssh 管理当中

Github 首页,点击 右边的 “Account settting” 按钮

点击左手边的 ”SSH keys“

点击”Add SSH key”

Title 随便写一个就好了,Key 就是刚才的公钥信息,填写好了,点击“Add key”

测试能否和Github 连通

ssh –T git@github.com

在Linux 上新建和一个文件夹存放 Github的文件

mkdir -p /opt/github
cd /opt/github

4 安装git ,安装方法参考github 官网介绍

http://git-scm.com/download/linux

配置 Github 账号

git config --global user.name "用户名"
git config --global user.email github注册的邮箱地址

5 初始化github 配置

git init

6 git 操作

连接一个github 项目

git remote add origin https://github.com/chenfool/test.git

 

新增一个文件,并且提交给Github

echo "hello github" > /opt/github/test.txt
git add /opt/github/test.txt
git commit /opt/github/test.txt -m "this is a test"
git push origin master

再到github 上去刷新一下页面,就能看到有一个新文件上存到服务器上了

 

如果是希望更新整个目录,包括已经删除的文件和目录,可以执行下面的命令

git  commit -am "add some string"

-a 代表 all ,全部的意思

 

从github download 文件的方法是

git pull  origin master

 

  • 给git 创建分支并且上传

创建分支

git branch [branchName]

查看当前有哪些分支

git branch

切换分支

git checkout [dranchName]

很多使用,我们在github 上看到一些开源项目,除了master 分支外,还有什么v1.0、v1.1 这些标签版本,这个实际上是git 的tag 功能。

创建一个tag ,例如

git tag -a v0.5 -m '一个简单可用版本'

如果用户在创建tag 时,报如下错误,那样证明用户没有初始化好,请参考上面的步骤教程。

*** Please tell me who you are.

Run

  git config --global user.email "you@example.com"
  git config --global user.name "Your Name"

to set your account's default identity.
Omit --global to set the identity only in this repository.

查看当前拥有什么tag

git tag

将新建的tag 推送到远程github 或者 gitlab 服务器,请用户自己填写自己的用户名和密码。成功后,再在页面上查看,就可以看到多个版本了

git push origin v0.5

 

  •  本地项目主动merge 远程项目

 如果 用户1 新建了一个 A 项目,然后用户2 fork 这个A项目,变成了B项目。

如果A 项目的代码有更新,用户2 想在B项目中merge A项目的最新代码,可以通过以下方式进行操作。

查看一下目前项目建立的源

git remote -v

查看一下A项目的git 地址,通过以下命令添加A 项目的源

git remote add upstream URL

下载A 项目的代码

git fetch upstream

合并代码

git merge upstream/master

最后如果想将A 项目的代码直接上传服务器,则使用push 命令即可。

参考博客:

merge 项目的介绍:https://segmentfault.com/q/1010000002590371

posted @ 2014-07-10 13:31  chenfool  阅读(532)  评论(0编辑  收藏  举报