一、环境

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. 提升Java开发效率必看!教你如何在MyEclipse中使用内联搜索

    MyEclipse CI 2019.4.0安装包下载 Inline Search取代传统Eclipse查找和替换对话框,提供更搞笑.更具侵略性的搜索体验——一种不会中断开发工作流程的工具. DevSt ...

  2. mybatis 分页插件PageHelper的简单使用

    首先在pom.xml配置文件中增加相关的插件. 插件地址:https://github.com/pagehelper/Mybatis-PageHelper <dependency> < ...

  3. idea无法创建javaclass文件

    一直用pycharm和jupyter. 今天发现打开IDEA 创建一个新的java项目(maven)后无法在里面的module中创建相应的java class文件 解决方案: (1)选择 File—— ...

  4. iOS设置UITableViewCell的选中时的颜色

    1.系统默认的颜色设置 //无色   cell.selectionStyle = UITableViewCellSelectionStyleNone;     //蓝色   cell.selectio ...

  5. 网页制作怎么加MP4,用HTML代码

    <video src="movie.mp4" controls="controls"> 您的浏览器不支持 video 标签. </video& ...

  6. vscode存盘时格式化

    1.文件->首选项->设置

  7. jquery checkbox选择器 语法

    jquery checkbox选择器 语法 作用::checkbox 选择器选取类型为 checkbox 的 <input> 元素.大理石平台价格表 语法:$(":checkbo ...

  8. 3.JSP

        JSP(Java Server Pages)页面是指扩展名为.jsp的文件,在一个JSP中可以包含指令标识,HTML代码, JavaScript代码,嵌入的Java代码,注释和JSP动作标识等 ...

  9. Java虚拟机之垃圾回收算法思想总结

    1.引用计数法 这是个比较古老而经典的垃圾回收算法,其核心就是在对象被其他所引用的时候计数器加1,而当引用失去时减1.这个方法有非常严重的问题:无法此话有理循环引用的情况,还有就是每次进行加减操作比较 ...

  10. Python3学习笔记(十):赋值语句和布尔值

    一.赋值语句 1.序列解包 多个赋值同时进行: >>> x,y,z = 1, 2, 3 >>> print(x, y, z) 1 2 3 变量交换: >> ...