一、引言

  1、最开始的时候,我本地项目连接的是github远程仓库,现在要转到公司的私人远程仓库。

  2、我和大家说两个事:

    (1)本地项目连接github远程仓库,

    (2)本地项目连接私人远程仓库,

二、具体实施

  1、本地项目链接github远程仓库(大家知道的,可以跳过这个步骤)

    (1)首先应该是安装git,这个不多说,不会的自行百度的,安装gitbash客户端,

    (2)第二步在本地建立一个本地仓库,我建立的路径是: D:/data/lender_v0.1,大家可以随便选一个文件(最好不要有中文,或者空格的,避免出现一些蛋疼的问题), 打开gitbash,到本地仓库的路径下,输入  :  git init  ,成功之后所在的目录下面会出现   .git文件。里面会存放我们的分支和版本。其实这就是我们的本地库。   

        git init

    (3)第三步,创建git 用户名 邮箱,在gitbash中输入:

    git config user.name "xiaochao"
git config user.email '188*******@163.com'

    (4)第四步,生成sshkey与github关联 在gitbash下输入:(填写git邮箱)

$ ssh-keygen -t rsa -C "188*******@163.com"

    (5)第五步,与github关联,生成的key在电脑的用户下.ssh文件下,  rsa_pub是公钥,rsa是私钥。把公钥复制到github上(前提你得有github账号)

  

      如图所示,添加sshkey。这样就会和github关联了。

      (6)第六步,我们可以提交代码了,

        git add  a.txt
        git commit -a "提交了a.txt文件,修改了...内容"
        git remote add origin git@github.com:xiaochao/lender.git
        git push origin master

      这里 git add 是提交到暂存区中,git commit是由暂存区提交到本地的仓库,并没有提交到远程仓库呢, git remote add origin ....       其中origin是你的远程仓库的名字(默认),后面的是你的github的地址。

      通过以上步骤我们就可以和github关联起来了。

  

  2、下面我和大家说第二个事,本地仓库链接私人仓库

    (1)首先我们需要创建一个私人仓库。(我的是linux系统下创建的私人仓库)安装git     

    sudo apt-get install git-core 

    (2)git数据交互是基于ssh的,查看是否开启了ssh服务,

    ps -ef|grep "sshd"  

     

  开启之后会显示一些信息。如上图所示。如果你能看到一些sshd相关的进程信息,则说明你已经有这个服务了,否则(或者你想更新的话),使用下面的命令安装openssh。

  sudo apt-get install openssh-server openssh-client  

    (3)为自己配置身份,创建用户名和邮箱

      git config --global user.name "xiaochao"
      git config --global user.email "188******@163.com"

    (4)我们配置一个git用户和密码专门对代码进行管理。

    sudo useradd -m git                                      (创建用户)
    sudo passwd git (修改密码)

    (5)我们需要建立一个仓库,

        git --bare  init           建立一个共享的仓库,只能接受push/pull ,不能本地commit

    (6)客户端创建公钥和私钥, 

         $ ssh-keygen -t rsa -C "188*******@163.com"

    (7)服务器端git打开RSA认证

    进入/etc/ssh目录,编辑sshd_config,把下面三个注释打开。

      RSAAuthentication yes
      PubkeyAuthentication yes
      AuthorizedKeysFile .ssh/authorized_keys

    保存,并重启服务,

    /etc/rc.d/init.d/sshd restart  

      由 AuthorizedKeysFile 得知公钥的存放路径是 .ssh/authorized_keys,实际上是 $Home/.ssh/authorized_keys,由于管理 Git 服务的用户是 git,所以实际存放公钥的路径是 /home/git/.ssh/authorized_keys。因为我们创建了git用户管理代码,把.ssh的权限设置为git。用户组也是git。

      chown -R git:git .ssh

    (8)将客户端的公钥导入服务器authorized_keys文件里,  

     cat   rsa_pub >> .ssh/authorized_keys               追加到authorized_keys文件末尾。

    输入git的密码:我们在(4)设置过git的密码。

    (9)修改.ssh的权限为700,修改.ssh/authorized_keys的权限为600,/home/work/权限为755,

    (10)客户端克隆项目

    git clone git@10.10.*.*:/home/data/git/lender.git

    

    (11)上传本地项目到服务端。

      git push

    

三、遇到的问题

  一直让我纠结的就是一直在提示输入密码,权限拒绝

经过仔细研究和请教大神,终于解决,其实就是需要密码的,因为我们在第四步的时候设置过密码,输入密码之后就会没问题了,这个问题有点坑。

参考url:http://www.cnblogs.com/dee0912/p/5815267.html,

参考url:http://blog.csdn.net/xsl1990/article/details/25486211,

参考url:http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000

git本地项目连接私人远程仓库以及遇到的问题的更多相关文章

  1. git 本地项目推到远程仓库

    …or create a new repository on the command line echo "# blog" >> README.mdgit initgi ...

  2. 【开发工具 - Git】之本地项目托管到远程仓库

    这里所说的“本地项目托管到远程仓库”,说的是:例如,我们在本地有一个写了很长时间的项目,现在想要托管到GitHub或码云上进行版本控制. 这个过程大致需要以下几个步骤: (1)在本地初始化Git项目本 ...

  3. Git——如何将本地项目提交至远程仓库

    参考文章:http://blog.csdn.net/dadaxiongdebaobao/article/details/52081826   git 将一个本地文件目录提交到远程仓库的步骤 参考文章: ...

  4. git 将本地项目关联到远程仓库

    初始化 在本地需要关联到远程仓库的项目根目录下执行 git init 然后关联远程仓库 [project].你需要存在一个远程仓库,名字随意,然后执行下面的命令(去掉中括号)就可以关联到该仓库. gi ...

  5. git本地项目上传远程

    Git的安装就不说了. 原文:https://blog.csdn.net/zamamiro/article/details/70172900 github官网说明: …or create a new ...

  6. Git:将本地项目连接到远程(github、gitee、gitlab)仓库流程

    当进行协同开发或者为了代码安全备份需要,一般都会将本地代码和远程仓库相连接. 备注:Github.Gitee.Gitlab是三个常用的远程git仓库,操作流程基本一致. 提前环境要求: 1.node. ...

  7. 将项目连接到远程仓库git

    方式一: git clone "git中的项目地址",此时会生成一个新的项目2.该步骤用于生成一个本地仓库 将需要提交的所有文件除了node_module.git以及输出文件dis ...

  8. Git——如何将本地项目提交至远程仓库(第一次)

    1.(先进入项目文件夹)通过命令 git init 把这个目录变成git可以管理的仓库. git init 2.把文件添加到版本库中,使用命令 git add .添加到暂存区里面去,不要忘记后面的小数 ...

  9. 【转】 Git——如何将本地项目提交至远程仓库

    1.(先进入项目文件夹)通过命令 git init 把这个目录变成git可以管理的仓库 git init 2.把文件添加到版本库中,使用命令 git add .添加到暂存区里面去,不要忘记后面的小数点 ...

随机推荐

  1. python购物车小案例

    python购物车小案例# 案列描述:有一个小型水果店里面有水果(苹果:¥8/kg,香蕉:¥5/kg,芒果:¥15/kg,葡萄:¥12/kg),客户带了100元钱进店选购水果.# 1.客户输入相应序号 ...

  2. php curl 生成的cookie 文件含义 cookie 属性含义

    最近用了curl 感觉还是很方便的,看了下curl生成的 cookie 文件 格式 , 对其中一些值的含义不是很明白,去找了些cookie的资料看了下,做下备忘 PHP curl 生成 的 cooki ...

  3. 【java基础】接口是否能有实现类?

    接口是否能有实现方法 我的回答: 当然可以 java8以后就允许接口有实现方法: default修饰的方法 static修饰的方法 /** * 能用lambda的情况,接口里面只有一个未实现的方法 * ...

  4. SpringBoot自定义starter及自动配置

    SpringBoot的核心就是自动配置,而支持自动配置的是一个个starter项目.除了官方已有的starter,用户自己也可以根据规则自定义自己的starter项目. 自定义starter条件 自动 ...

  5. Windows包管理器

    Windows包管理器 Scoop 参考 安装命令 set-executionpolicy remotesigned -scope currentuser #用powershell执行 iex (ne ...

  6. 深度解密Go语言之 pprof

    目录 什么是 pprof pprof 的作用 pprof 如何使用 runtime/pprof net/http/pprof pprof 进阶 Russ Cox 实战 查找内存泄露 总结 参考资料 相 ...

  7. 「刷题」Triple

    正解是普通型母函数+FFT. 才学了多项式,做了一道比较好的题了. 首先有三个斧子被偷了. 我们考虑构造一种普通型母函数. 就是说一种多项式吧,我的理解. 系数是方案,下标,也就是所谓的元指数代表的是 ...

  8. Tomcat性能调优实战

    今日帮朋友做了tomcat性能调优的实际操作,心得记录一下. 服务器:Windows2017 配置:CPU 4 内存 8G Tomcat8.0+版本. 压力测试工具:apache-jmeter-4.0 ...

  9. DAY 5 搜索

    搜索 开篇: mayan游戏(noip2011 day1 T3) 这道题就是个码量题,老师讲题时淡淡的说写完前两题就花一个半小时了,最后一题不快点打会调不出来,对于一个三个半小时就写两题的蒟蒻来说这. ...

  10. Go 基础学习笔记 (5)| 数据类型说明与使用

    在 Go 编程语言中,数据类型用于声明函数和变量. 数据类型的出现是为了把数据分成所需内存大小不同的数据,编程的时候需要用大数据的时候才需要申请大内存,就可以充分利用内存. Go 语言按类别有以下几种 ...