一、环境

1、下载源码包

https://mirrors.edge.kernel.org/pub/software/scm/git/

2、安装编译环境

#yum install gcc gcc-c++ zlib zlib-devel perl-ExtUtils-CBuilder perl-ExtUtils-MakeMaker  curl-devel expat-devel gettext-devel openssl-devel

二 、安装

#tar -xvf git-2.9.5.tar

#cd git-2.9.5/

#./configure  --prefix=/home/Git

#make && make install

# vi /etc/profile

export PATH=$PATH://home/Git/bin

#source   /etc/profile

三、初始化和账户

# git init
Reinitialized existing Git repository in /home/.git/
# git config --global user.name "zjz"
# git config --global user.email "157@qq.com"
# git config --list
user.name=zjz
user.email=157@qq.com
core.repositoryformatversion=0
core.filemode=true
core.bare=false
core.logallrefupdates=true

四、git用ssh连接github

1、生成本地ssh key

#ssh-keygen -t rsa -C 'git@github.com'

2、复制 公钥,在github 中添加ssh key

# cat .ssh/id_rsa.pub
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDJuDgCtLqplUxi/fH6GvWFR4FcbbWvi2wWUVKNsmmsMhd3mvN8NlYVMaNaoNiuOaZw/N0oKtv5j/PxOnhFEgDlQmgAU5oqLWXfulUe/di1xsLSIbcVV9ff5Uy8RbUwFPQuHaW2TVv2M7FpGoLXUSVm+luHFsjj7emNmuv7q2wh97xXiJPMbywCgWh0+YiO8t5MunihIYegfP8QGd4Zl+6qmwxvPDhVIPd4tRU+exGBEL6k47cmIJRQCmG9XW80WQFYHznoimmzGS5YDLjEQO6NX8YA/CzZYGwtMO20B9QP/ORN/XAYLHjzcvyc0RdHIXaVXyVWkMcrd1t+alS2U+c1 git@github.com
3、在github找到账户设置

4、进行认证(但不能远程连接)

# ssh -T git@github.com

5.在本地添加远程仓库用户名

# git config --global user.name 'xiaohong'

6.在本地添加远程仓库邮箱
# git config --global user.email '512050951@163.com'

7.启用默认的颜色设置
# git config --global color.ui true

8.查看配置

# git config --list
user.name=xiaohong
user.email=512050951@163.com
color.ui=true
#  ls .gitconfig
.gitconfig
# cat .gitconfig
[user]
    name = xiaohong
    email = 512050951@163.com
[color]
    ui = true

9.连接远程仓库
# git remote -v
origin    git@github.com:zjz5740-zjz/zhang.git (fetch)
origin    git@github.com:zjz5740-zjz/zhang.git (push)

10.设置远程仓库地址

# git  init (初始化很重要,不然后续出错)
Initialized empty Git repository in /root/.git/
# git remote add origin git@github.com:zjz5740-zjz/zhang.git

11.克隆远程仓库文件

# git clone git@github.com:zjz5740-zjz/zhang.git
Cloning into 'zhang'...
remote: Enumerating objects: 6, done.
remote: Counting objects: 100% (6/6), done.
remote: Compressing objects: 100% (6/6), done.
remote: Total 6 (delta 0), reused 0 (delta 0), pack-reused 0
Receiving objects: 100% (6/6), done.
Checking connectivity... done.
# ls
anaconda-ks.cfg   zhang

12.上传文件

# git init && ls  (初始化)
cdn.txt  kail.txt
# git remote add origin git@github.com:zjz5740-zjz/zhang.git    (如果报错,执行git remote rm origin )
# git add . (建立当前文件夹下所有的文件,为准备上传的文件)
#  git commit -m 'this is first commit'   (提交上传说明)
[master aec3079] this is first commit
 1 file changed, 1 deletion(-)
 delete mode 160000 zhang
# git push -u origin master   (上传报错)

解决办法:

# git pull --rebase origin master  (错误的主要原因是github中的README.md文件不在本地代码目录中注:pull=fetch+merge)
warning: no common commits
remote: Enumerating objects: 15, done.
remote: Counting objects: 100% (15/15), done.
remote: Compressing objects: 100% (9/9), done.
remote: Total 15 (delta 1), reused 8 (delta 0), pack-reused 0
Unpacking objects: 100% (15/15), done.
From github.com:zjz5740-zjz/zhang
 * branch            master     -> FETCH_HEAD
 * [new branch]      master     -> origin/master
First, rewinding head to replay your work on top of it...
Applying: this is first commit
Applying: this is first commit
# git push -u origin master  (再次上传)
Counting objects: 6, done.
Compressing objects: 100% (6/6), done.
Writing objects: 100% (6/6), 1.74 KiB | 0 bytes/s, done.
Total 6 (delta 1), reused 0 (delta 0)
remote: Resolving deltas: 100% (1/1), done.
To github.com:zjz5740-zjz/zhang.git
   e040c39..c73eb6c  master -> master
Branch master set up to track remote branch master from origin.
小结:带着错误,多百度。

源码搭建git,并连接github的更多相关文章

  1. windows中使用Git工具连接GitHub(配置篇)

    Git在源码管理领域目前占很大的比重了,而且开源的项目很多都转到GitHub上面了.例如:jQuery, reddit, Sparkle, curl, Ruby on Rails, node.js,  ...

  2. Caffe源码阅读(1) 全连接层

    Caffe源码阅读(1) 全连接层 发表于 2014-09-15   |   今天看全连接层的实现.主要看的是https://github.com/BVLC/caffe/blob/master/src ...

  3. ARL(资产侦察灯塔系统)-源码搭建

    freebuf能力中心开源了一套资产扫描系统(https://github.com/TophantTechnology/ARL),提供docker版,但并无源码搭建的文档(无完整文档).于是在星光哥及 ...

  4. linux(centos)源码安装git

    最近使用一个开源库,部署的的时候需要用git克隆依赖库.刚好系统没安装git.就尝试了源码安装git. 源码下载地址:http://codemonkey.org.uk/projects/git-sna ...

  5. 源码搭建LNMP

      源码安装LNMP 作者:尹正杰   版权声明:原创作品,谢绝转载!否则将追究法律责任.       欢迎加入:高级运维工程师之路 598432640 前言:非常简单的一个平台LNMP,在生产实际环 ...

  6. Sublime Text 中使用Git插件连接GitHub

    sublime Text的另一个强大之处在于它提供了非常丰富的插件,可以帮助程序员来适合大多数语言的开发.这些插件通过它自己的Package Controll(包管理)组件来安装,非常方便.一般常用的 ...

  7. 利用shell脚本去备份幸运28源码搭建下载所指定的数据库

    #! /bin/bash幸运28源码搭建下载Q[115288oo99]logintool=/home/yx/server/mysql/mysql/bin/mysqldumptool=/home/yx/ ...

  8. ElasticSearch6.3.2源码分析之节点连接实现

    ElasticSearch6.3.2源码分析之节点连接实现 这篇文章主要分析ES节点之间如何维持连接的.在开始之前,先扯一下ES源码阅读的一些心得:在使用ES过程中碰到某个问题,想要深入了解一下,可源 ...

  9. 直播平台源码搭建教程:微信小程序中的直播如何去掉水印

    直播平台源码搭建教程:微信小程序中的直播如何去掉水印 本文与大家分享一下直播平台源码搭建教程,如何去掉直播视频的水印 var services = require('../../lib/service ...

随机推荐

  1. 程序包管理工具yum

    yum 首先要有一个网络上或本地或远程的yum仓库.然后需要yum安装程序的机器去yum仓库下载yum元数据(包括包信息和依赖信息)到本地的cache里.当需要安装程序的时候,会查看yum源数据里是否 ...

  2. mysql细说show slave status参数详解(最全)

    1. Slave_IO_State 这里显示了当前slave I/O线程的状态(slave连接到master的状态).状态信息和使用show processlist | grep "syst ...

  3. Java多线程1:使用多线程的几种方式以及对比

    前言 Java多线程的使用有三种方法:继承Thread类.实现Runnable接口和使用Callable和Future创建线程,本文将对这三种方法一一进行介绍. 1.继承Thread类 实现方式很简单 ...

  4. GitHub : Hello World

    这个写的太好啦,让我也没啥可以写的啦:http://www.open-open.com/lib/view/open1454507333214.html

  5. JAVA笔记5-package和import

    1.基本介绍 为便于管理大型软件系统中数目众多的类,解决类的命名冲突问题,Java引入包(package)机制,提供类的多重类命名空间.在实际项目开发中任何类都应该定义在包中. (1)package语 ...

  6. Python内置类属性

    __dict__ : 类的属性(包含一个字典,由类的数据属性组成) __doc__ :类的文档字符串 __name__: 类名 __module__: 类定义所在的模块(类的全名是'__main__. ...

  7. 51 Nod 1069 Nim游戏

    分析: a1 xor a2 xor a3 ... xor an !=0 则为必胜态 a1 xor a2 xor a3 ... xor an ==0 则为必败态 也就是说只要计算异或值,如果非零则A赢, ...

  8. KMP 串的模式匹配 (25 分)

    给定两个由英文字母组成的字符串 String 和 Pattern,要求找到 Pattern 在 String 中第一次出现的位置,并将此位置后的 String 的子串输出.如果找不到,则输出“Not ...

  9. java中的基本数据类型简谈

    在java里面有八大基本的数据类型,分别是 byte,short,char,int,long,float,double,boolean 然后需要说的就是几个特殊的基本数据类型的取值范围 先来说说byt ...

  10. linux安装提示权限 不足 ,原来是锁了

    lsattr     查看 然后就是chattr -i /etc    -i 是解锁 +i 就是上锁