一、引言

  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. 第三十四章 POSIX消息队列

    POSIX消息队列相关函数 mq_open 功能: 用来创建和访问一个消息队列 原型: mqd_t mq_open(const char *name, int oflag); //只能用来打开消息队列 ...

  2. python中小整数对象池及intern机制

    小整数对象池: Python为了优化速度,使用了小整数对象池,避免为整数频繁申请和销毁 Python 对小整数的定义是 [-5, 256] 这些整数对象是提前建立好的,不会被垃圾回收,所有位于这个范围 ...

  3. C#之委托如此简单

    近期和几位做嵌入式开发的朋友闲聊过程中,一位朋友抱怨到:这C#太难用了,我想在N个窗体(或者是N个用户组件之间)传递值都搞不定,非得要定义一个全局变量来存储,然后用定时器来刷新值,太Low了.我急切的 ...

  4. [考试反思]0921csp-s模拟测试49:困顿

    太弱.还是太弱. 拉不开分差,离第一机房分数线估计还是300多分. 但是,还是要骂:XX出题人. 部分分非常少且没有意义,T1基本只有0/纯暴力20/100三个档, T2正解是n2但是n3一分不给,还 ...

  5. 20190820 Tue 集训总结&NOIP模拟 27

    低谷度过了? 但是skyh阿卡了,还是反衬出我的辣鸡. T1知道要sort,却忘了判重,正解不如暴力分高,555. T2成功化出正解柿子,然后化过头了,化出了无法DP的柿子. 果然不够强,大神们一眼就 ...

  6. 「Luogu 3792」由乃与大母神原型和偶像崇拜

    更好的阅读体验 Portal Portal1: Luogu Description 给你一个序列\(a\) 每次两个操作: 修改\(x\)位置的值为\(y\): 查询区间\([l, r]\)是否可以重 ...

  7. 手把手带你实战下Spring的七种事务传播行为

    目录 本文目录 一.什么是事务传播行为? 二.事务的7种传播行为 三.7种传播行为实战 本文介绍Spring的七种事务传播行为并通过代码演示下. 本文目录 一.什么是事务传播行为? 事务传播行为(pr ...

  8. 深入理解@LoadBalanced注解的实现原理与客户端负载均衡

    前提 在阅读这篇博客之前,希望你对SpringCloud套件熟悉和理解,更希望关注下微服务开发平台 概述 在使用springcloud ribbon客户端负载均衡的时候,可以给RestTemplate ...

  9. SSM整合相关试题

    1.下列关于Spring自动装配的说法中,错误的是() A 在Spring配置文件中,可以通过<bean>元素的autowire属性指定自动装配方式 B autowire属性值可以设置为n ...

  10. JavaScript闭包使用姿势指南

    目录 JavaScript闭包使用姿势指南 引言 闭包的定义 来个有趣的例子吧 现在我们换个例子吧 我们再来个有趣的例子 内存泄露问题 用闭包解决递归调用问题 用闭包模拟私有方法 在循环中使用闭包 性 ...