`

git 初使用

 
阅读更多

1 error:src refspec master does not match any

问题产生

 

a git服务器使用如下命令新建一个项目

 

1

$ cd /opt/git

2

$ mkdir project.git

3

$ cd project.git

4

$ git --bare init

b 客户端clone代码并提交

1

$ cd myproject

2

$ git init

3

$ git add .

4

$ git commit -m 'initial commit'

5

$ git remote add origin git@gitserver:/opt/git/project.git

6

$ git push origin master

c push报错 

 

Git 常见问题整理

 

原因分析

 

引起该错误的原因是,目录中没有文件,空目录是不能提交上去的

 

解决办法

 

1

touch README

2

git add README 

3

git commit -m 'first commit'

4

git push origin master

2 fatal: unable to connect to eagain.net

问题产生

 

使用git clone 命令从 eagain.net 克隆gitosis.git源码出错

 

解决办法

 

1

git clone git://github.com/res0nat0r/gitosis.git

3 fatal:Interactive git shell is not enabled

问题产生

 

a 设置git用户登录shell

 

作为一个额外的防范措施,你可以用Git 自带的git-shell 简单工具来把git 用户的活动限制在仅与Git 相关。把它设为git 用户登入的shell,那么该用户就不能拥有主机正常的shell 访问权。为了实现这一点,需要指明用户的登入shell 是git-shell ,而不是bash 或者csh。你可能得编辑/etc/passwd 文件:

 

1

sudo vim /etc/passwd

找到git用户的信息,修改如下:

 

Git 常见问题整理

 

保存修改后,使用如下命令访问服务器

 

1

ssh git@gitserver

报错如下:

 

Git 常见问题整理

 

原因分析

 

按照提示,在git用户的主目录下面需要存在git-shell-commands目录

 

解决办法

 

在git用户的主目录下面新建git-shell-commands目录

 

参考链接

 

http://planzero.org/blog/2012/10/24/hosting_an_admin-friendly_git_server_with_git-shell

 

4 通过http协议clone出错

问题产生

 

在gitserver通过apache提供了git项目的公共访问地址,在克隆的时候报错如下:

 

Git 常见问题整理

 

解决办法

 

在git服务器上要提供的项目下面执行

 

1

git update-server-info

5  centos5.8下面安装gitweb的默认路径问题

问题产生

 

在centos下使用yum install gitweb 命令安装gitweb后找不到gitweb的默认安装路径

 

原因分析

 

网络上的说法默认路径是 /var/www/git ,但是在我的centos虚拟机中,安装完gitweb后,默认路径是/usr/share/gitweb

 

解决办法

 

由于按网上的说法,找不到gitweb的默认安装路径,我使用了find 命令,用来查找gitweb所在的目录

 

6 安装gitosis时使用python3.3.0执行python setup.py install 报错

问题产生

 

在安装gitosis的时候,需要预先安装工具包python-setuptools,安装命令比较简单

 

1

yum install python-setuptools

但是在clone了gitosis代码,执行python安装命令的时候报错,错误提示如下:

 

ImportError: No module named setuptools

 

原因分析

 

1

<span>网上摘要 </span>Your setup.py file needs setuptools. Many of the Python packages use distutils for the distribution, but some use setuptools, a more complete package. Here is a question about the differences between them.Regarding Python 3.3, you should install distribute instead. It is a more recent package that works in the same way as setuptools (it's even called setuptools internally).

2

 

3

链接地址:

4

http://stackoverflow.com/questions/14426491/python-3-importerror-no-module-named-setuptools

centos默认的python版本是2.4.3,因为一次机会我升级了python的版本到3.3.0,这样就出现了错误。

 

解决办法

 

我的办法是降低了python的版本,有兴趣的同学可以尝试安装distribute包,看能不能解决这个问题

 

7 git push origin master 到github出错

问题产生

 

本地项目添加了远程仓库,但是在推送代码到远程仓库的时候,报无法连接到远程服务器

 

原因分析

 

github和本地代码做推送和拉取时,需要用到ssh的密钥对进行数据加解密,由于github上新建的项目没有添加密钥,所以本地仓库连接不到远程仓库

 

解决办法

 

在github上为该项目添加公钥,推荐做法是不要单独为每个项目添加公钥,而是直接通过github帐号的ssh信息维护开发机的ssh公钥

分享到:
评论
1 楼 baukh789 2014-06-27  
...我们公司最近也在推这个东西,SVN用了四五年了,猛的换一下这个,太不适应了。

相关推荐

    Git初用者使用步骤

    Git初用者使用步骤,随时在自己忘记使用步骤的时候,翻阅,省时间

    为你自己学Git

    10.7 与其它开发者的互动 - 使用 Pull Request(PR) 10.8 状况题 怎么跟上当初 fork 专案的进度? 10.9 状况题 怎么删除远端的分支? 10.10 状况题 听说 git push -f 这个指令很可怕,什么情况可以使用它呢? ...

    git简介及基本操作

    git简介及基本操作git简介及基本操作git简介及基本操作git简介及基本操作git简介及基本操作

    git-2.15.1.dmg

    2018年初官网最新 MAC 版, Git 最新版本 2.15.1, 国内访问国外网站要么被墙,要么下载巨慢, 贡献新下载的 release 版.

    git-2.15.1-release

    2018年初官网最新, Git 最新版本 2.15.1.2, 国内访问国外网站要么被墙,要么下载巨慢,

    Git-1.8.5.2-preview20131230

    Git-1.8.5.2-preview20131230 2014年初最新的windows git服务安装包

    gitosis git服务器架设软件

    这篇文章的安装流程写得很明了,但使用中还是遇到了些许问题,本文算是该流程的补充。如果打算通过Gitosis架设服务器通过本文或许可以少走不少弯路。 一、架设步骤 1. 下载并安装python setuptools sudo apt-get ...

    git-2.1.2.tar.gz

    git-2.1.2.tar.gz Git(读音为/gɪt/。)是一个开源的分布式版本控制系统,可以有效、高速的处理从很小到非常大的项目版本管理。 [1] Git 是 Linus Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的版本...

    ubuntu14_myeclipse2015整合maven和git

    myeclipse2015 初体验,在ubuntu14上,并且整合maven和git,并实现将项目推送到github. 提供了myEclipse2015 破解工具 (myeclipse2014的破解工具是破解不了2015的) 详细步骤 请看文档 !

    如何在TFS中使用Git

    对CharleyBlog的代码进行版本控制的想法由来已久,在代码建立之初其实已经使用过TFS进行控制,只是后期没能好好用起来,加之后来系统环境的变化导致TFS连接丢失,便算是正式放弃了版本控制这个重要的工具。...

    git-notes:luochen1990的git笔记

    这篇文章正写在我刚刚度过这段时期的时候,旨在理清初学git时最需要知道的一些概念,希望这样可以帮助其他初用Git的朋友更快地找到节奏。 指出一些惯用的命令,本文内容并不全面,而是给出Git用法的一个子集,更多地...

    git命令介绍

    比较详细的git介绍,适合初使用者可供参考,能满足初步的git操作。

    [Git][初学] 06. Github 注册与基本使用

    [Git][初學]_06._Github_註冊與基本使用

    qiubiteme#Github_pages#2.1 Git 基础 - 获取 Git 仓库1

    在现有目录中初始化仓库如果你打算使用 Git 来对现有的项目进行管理,你只需要进入该项目目录并输入:该命令将创建一个名为 .git 的子目录,这个子目录含有你初

    git-lob:Git中的实验性大文件(已停产,请改用git-lfs)

    git-lob是[Atlassian]( )在2014年末/ 2015年初对Git大文件处理的实验。对于我们来说,不为所知的是,GitHub也已经开始解决此问题,并宣布[Git LFS]( )。 Atlassian敏锐地意识到,不再进一步分割这个空间符合...

    git-json-merge:git合并驱动程序,使用xdiff自动解决json文件中的合并冲突。 这个项目的灵感来自git-po-merge

    一个使用自动解决json文件中的合并冲突的git合并驱动程序。 它还会自动检测缩进。 这个项目的灵感来自 。 安装 可以使用以下两种方法之一来完成此任务:全局或按项目/目录: 全球范围 安装: npm install --global ...

    git-scripts:新用户的 Git 命令包装器

    git 脚本 如果您不熟悉 git 和 github 操作,一堆脚本可以为您节省一些时间进行 git 和 github 操作。 在 Ubuntu 14.04 上测试... 新建/删除分支和设置(克隆和一些初​​始化)操作。 如果您有任何问题,请联系: 。

    Git基础.xmind

    该文件是git的xmind整理,需要的小伙伴可以自取,完全免费,完全免费,完全免费。重要的事情说三遍,后续还会继续上传一些免费好用的资源文件,希望可以帮助到一些初入坑的小伙伴们。加油。

Global site tag (gtag.js) - Google Analytics