新开了一个项目,现在需要将代码放在公司GIT服务器上面。所以这里需要了一些问题。。记录一下。
因为原来公司这边的服务器的git用户都是创建好的。这里没有创建。需要的可以看看:http://www.cnblogs.com/zhoug2020/p/5789041.html。这个博客。
我是直接从创建仓库那里开始了。。通过查找搭建GIT服务器仓库的教程,但是教程有很多问题。导致一直失败。所以这里就写一份本人自己的一些流程方法,供大家参考。

1.进入到git服务器。(比如我这边进入是 执行命令: ssh username@192.111.111.111)..username是配置的用户名。再写上自己的git服务器ip。这里会提示输入密码。

2.进到git服务器后,创建工程的文件夹。执行命令:mkdir ProjectName。

3.进入到创建的工程文件夹。执行命令:cd ProjectName。

4.初始化一个git仓库。。

4.1。如果不执行 touch Readme、git add Readme的操作的话。不管是拉取还是其他操作都会出现"This operation must be run in a work tree"错误。网上很多教程是没有这个步骤的,。被坑惨了。

//执行下方4个命令
touch Readme
//网上还有 git --bare init的方法。如果执行git --bare init初始化的话。在git add Readme这部会提示“This operation must be run in a work tree”错误。
//如果不执行 touch Readme、git add Readme的操作的话。不管是拉取还是其他操作都会出现"This operation must be run in a work tree"错误。网上很多教程是没有这个步骤的,。被坑惨了。
git init
git add Readme
git commit -m 'initial commit' Readme

5.进入到git。修改配置文件。执行命令:cd .git(要在ProjectName目录下执行)

6.修改配置文件。config。。执行命令:vim config

7.添加相关配置信息。在config文件内添加:

 [receive]
denyCurrentBranch = ignore

7.1。如果不添加配置信息的话。会在push的时候出现错误:

//推送被拒绝然后输出的错误信息
[remote rejected] master -> master (branch is currently checked out)
remote: error: refusing to update checked out branch: refs/heads/master
remote: error: By default, updating the current branch in a non-bare repository
remote: error: is denied, because it will make the index and work tree inconsistent
remote: error: with what you pushed, and will require 'git reset --hard' to match
remote: error: the work tree to HEAD.
remote: error:
remote: error: You can set 'receive.denyCurrentBranch' configuration variable to
remote: error: 'ignore' or 'warn' in the remote repository to allow pushing into
remote: error: its current branch; however, this is not recommended unless you
remote: error: arranged to update its work tree to match what you pushed in some
remote: error: other way.
remote: error:
remote: error: To squelch this message and still keep the default behaviour, set
remote: error: 'receive.denyCurrentBranch' configuration variable to 'refuse'.
To git@192.168..X:/var/git.server/.../web
! [remote rejected] master -> master (branch is currently checked out)
error: failed to push some refs to 'git@192.168.1.X:/var/git.server/.../web'

8.创建完git仓库了。。这时候要给用户赋权限。不然的话,不能对他进行操作。执行命令:chown -R username .git(这个命令是在ProjectName文件夹的路径后执行的。注意.git的路径是不是对的。)

9.完成整个步骤。这是你通过clone等命令或者使用SourceTree工具将git仓库保存到本地后,在相应文件夹添加或者修改内容后就能push上去了。

PS:git是一个很好的源码管理工具,公司内部的话,搭建服务器的git仓库是很有必要的。所以这次的搭建仓库成功还是很有成就感的。哈。其实主要的就3个地方要注意:

1.权限有没有赋给用户

2.Readme文件有没有添加。

3.config配置文件有没有配置对。

谢谢。

最新搭建GIT服务器仓库的更多相关文章

  1. 不搭建git服务器对git仓库进行局域网内共享多人合作开发项目

    有时候在一个临时局域网内没有搭建git服务器,但是又想多人开发一个项目,此时只要每个人电脑安装有git客户端,参考一下方法即可尝试建一个本地化的远程仓库进行多人开发工作. 远程仓库通常只是一个裸仓库( ...

  2. Git服务器仓库的搭建和客户端使用方法

    环境说明: 1.fedora21  桌面系统  2.已经配置好yum仓库 一.安装git # yum install git 1.1 创建git用户 创建git账户并登录,直接指定用户目录到/home ...

  3. (转)初学Git及简单搭建git服务器和客户端

    终于搞定,mac自己作为git服务器,mac也是客户端,如何免登 从另外一个linux服务器的上传公钥得到提示 ssh-copy-id -i ~/.ssh/id_rsa.pub git@192.168 ...

  4. 搭建Git服务器及本机克隆提交

    前文 Git是什么? Git是目前世界上最先进的分布式版本控制系统. SVN与Git的最主要的区别? SVN是集中式版本控制系统,版本库是集中放在中央服务器的,而干活的时候,用的都是自己的电脑,所以首 ...

  5. 搭建Git服务器

    在远程仓库一节中,我们讲了远程仓库实际上和本地仓库没啥不同,纯粹为了7x24小时开机并交换大家的修改. GitHub就是一个免费托管开源代码的远程仓库.但是对于某些视源代码如生命的商业公司来说,既不想 ...

  6. Git学习笔记(10)——搭建Git服务器

    本文主要记录了Git服务器的搭建,以及一些其他的配置,和最后的小总结. Git远程仓库服务器 其实远程仓库和本地仓库没啥不同,远程仓库只是每天24小时开机为大家服务,所以叫做服务器.我们完全可以把自己 ...

  7. centos 搭建git服务器

    centos 6搭建git服务器 安装 rpm -ivh http://mirrors.aliyun.com/epel/epel-release-latest-6.noarch.rpm yum ins ...

  8. 如何在服务器上搭建git服务器

    参考文章: http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000/00137583770 ...

  9. 使用Gitosis搭建Git服务器

    使用Gitosis搭建Git服务器 作者: JeremyWei | 可以转载, 但必须以超链接形式标明文章原始出处和作者信息及版权声明 网址: http://weizhifeng.net/build- ...

随机推荐

  1. schema对象介绍

    1.schema对象简介 数据库schema为一组数据结构的逻辑集合,称之为schema对象,schema对象最贱的为表和索引,schema对象由SQL创建和维护. 一个数据库用户拥有一个用户名和各种 ...

  2. 对Spring的理解

    1.Spring实现了工厂模式的工厂类,这个类名为BeanFactory实际上是一个接口,在程序中通常BeanFactory的子类ApplicationContext.Spring相当于一个大的工厂类 ...

  3. PHP的MySQL扩展:MySQL数据库概述

    来源:http://www.ido321.com/1023.html 一.SQL:结构化查询语言 SQL(Structured Query Language)是高级的非过程化变成语言,专门用于查询和修 ...

  4. C# 字符串格式

    1.数字补零输出字符串 String.Format("{0:D6}",123); 2.字符串靠左输出6位 String.Format("{0,-6}",&quo ...

  5. SQL入门

    ​ # SQL入门 数据库表 一个数据库(database)通常包含一个或多个表(table). 每一个表都有一个名字标识. 表单包含数据的记录(行). 一些重要的SQL命令(常用的吧) 命令 说明 ...

  6. 第二百六十六天 how can I 坚持

    有些小郁闷,上班没事干,技术.要买房,还要结婚,买了房哪还有彩礼钱,还得借钱,愁人. 该咋办,毕梦琪. 哎.今天还和程秀通说好的去看房呢,整天犹豫不定的.烦. 今天平安夜啊.吃了个苹果,一生平平安安, ...

  7. Android实例-全屏显示程序(XE10+小米2)(无图)

    方法一:选中窗体->BorderStyle改为“None” 方法二: 1.下载第三方控件QAndroid.Shell 2.执行FShell.Execute('su -c mount -o rem ...

  8. [iOS 多线程 & 网络 - 2.3] - 解析xml

    A.XML基本知识 1.xml概念 什么是XML全称是Extensible Markup Language,译作“可扩展标记语言”跟JSON一样,也是常用的一种用于交互的数据格式一般也叫XML文档(X ...

  9. [iOS 多线程 & 网络 - 1.0] - 多线程概述

    A.进程 什么是进程进程是指在系统中正在运行的一个应用程序 每个进程之间是独立的,每个进程均运行在其专用且受保护的内存空间内 比如同时打开QQ.Xcode,系统就会分别启动2个进程 通过"活 ...

  10. Codeforces Round #245 (Div. 1) B. Working out (简单DP)

    题目链接:http://codeforces.com/problemset/problem/429/B 给你一个矩阵,一个人从(1, 1) ->(n, m),只能向下或者向右: 一个人从(n, ...