一、引言

  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. swift 手机号、邮箱、网址等正则表达式验证

    看到一个不错的swift的 手机号.邮箱.网址等正则表达式验证,分享给大家. 支持swift3,经过修改后,亲测可用! import Foundation enum Validate { case e ...

  2. Centos 7修改hostname浅析

    之前写过一篇博客"深入理解Linux修改hostname",里面总结了RHEL 5.7下面如何修改hostname,当然这篇博客的内容其实也适用于CentOS 6,但是自CentO ...

  3. data-*设置自定义属性注意事项一

    本人才疏学浅,偶遇一个data自定义属性应当注意的小问题,随笔记下. 1.看下面代码:首先在a标签设置自定义两个属性 <a class="btn" href="ja ...

  4. Java HashSet对txt文本内容去重(统计小说用过的字或字数)

    Java HashSet对txt文本内容去重(统计小说用过的字或字数) 基本思路: 1.字节流读需要去重的txt文本.(展示demo为当前workspace下名为utf-8.txt的文本) 2.对读取 ...

  5. 作为一名程序员,你真正了解CDN技术吗?

    本文导读: 物流仓库配送如何加速 静态资源文件部署方式 静态资源加速之CDN技术 解析过程中的名词解释 最后的总结 1.物流仓库配送如何加速 我们还是从生活中购物的例子来展开. 将时光倒回到几年前,在 ...

  6. 说说 Python3 中的数字处理

    最近在处理订单相关的问题,踩了数字的一些坑,在此记录下. 其中有问题的代码涉及金额比较,便于描述,假设了下面一段代码 def is_paid(pay_price, paid_price): retur ...

  7. 赤壁情:dp

    首先这道题用到的3个新关键字大概讲一下: (我刚学会仅仅会瞎搞做题,欢迎大神补充) static:声明一个变量并清空.(不知道用不用时间,求解答) 具体用法:static 变量类型 变量名.如:sta ...

  8. js取两位小数点

    var money = one.money; var tmoney = money.substr(0,money.indexOf(".")+3);

  9. 演示vsftpd服务匿名访问模式、本地用户模式的配置

    文件传输协议(FTP,File Transfer Protocol) 即能够让用户在互联网中上传.下载文件的文件协议,而FTP服务器就是支持FTP传输协议的主机,要想完成文件传输则需要FTP服务端和F ...

  10. Python 基础 面向对象之二 三大特性

    Python 基础 面向对象之二 三大特性 上一篇主要介绍了Python中,面向对象的类和对象的定义及实例的简单应用,本篇继续接着上篇来谈,在这一篇中我们重点要谈及的内容有:Python 类的成员.成 ...