Git 常见问题整理
在学习git的过程中,遇到如下问题,特整理如下:
1 error:src refspec master does not match any
问题产生
a git服务器使用如下命令新建一个项目
$ cd /opt/git
$ mkdir project.git
$ cd project.git
$ git --bare init
b 客户端clone代码并提交
$ cd myproject
$ git init
$ git add .
$ git commit -m 'initial commit'
$ git remote add origin git@gitserver:/opt/git/project.git
$ git push origin master
c push报错
原因分析
引起该错误的原因是,目录中没有文件,空目录是不能提交上去的
解决办法
touch README
git add README
git commit -m 'first commit'
git push origin master
2 fatal: unable to connect to eagain.net
问题产生
使用git clone 命令从 eagain.net 克隆gitosis.git源码出错
解决办法
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 文件:
sudo vim /etc/passwd
找到git用户的信息,修改如下:
保存修改后,使用如下命令访问服务器
ssh git@gitserver
报错如下:
原因分析
按照提示,在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 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,安装命令比较简单
yum install python-setuptools
但是在clone了gitosis代码,执行python安装命令的时候报错,错误提示如下:
ImportError: No module named setuptools
原因分析
网上摘要 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). 链接地址:
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公钥
Git 常见问题整理的更多相关文章
- 整理我的Git常见问题和命令
整理我的Git常见问题和命令 目录 整理我的Git常见问题和命令 提交注释规范 合并分支 clone & 切换分支 支持中文路径显示 账户及密码 基于远程分支创建本地分支 提交注释规范 举例: ...
- Maven使用常见问题整理
Maven使用常见问题整理 1.更新eclipse的classpath加入新依赖 1.在dependencyManagement里面加入包括版本在内的依赖信息,如: <dependenc ...
- LoadRunner常见问题整理(转)
首先要感谢群友的无私分享,才能得到这篇好的学习资料,整理得太好了,所以收藏保存,方便以后学习. 一:LoadRunner常见问题整理 1.LR 脚本为空的解决方法: 1.去掉ie设置中的第三方支持取消 ...
- [转]LoadRunner脚本录制常见问题整理
LoadRunner脚本录制常见问题整理 1.LoadRunner录制脚本时为什么不弹出IE浏览器? 当一台主机上安装多个浏览器时,LoadRunner录制脚本经常遇到不能打开浏览器的情况,可以用下面 ...
- Git 初学者使用指南及Git 资源整理
Git 资源整理 Git is a free and open source distributed version control system designed to handle everyth ...
- git相关整理
title: git相关整理 toc: false date: 2018-09-24 20:42:55 git merge 和 git merge --no--ff有什么区别? git merge命令 ...
- [转帖]kubernetes 常见问题整理
kubernetes 常见问题整理 https://www.cnblogs.com/qingfeng2010/p/10642408.html 使用kubectl 命令报错 报错: [root@k8s- ...
- Git 使用心得 & 常见问题整理
开源Linux 回复"读书",挑选书籍资料~ Git 流程图 Workspace:工作区 Index / Stage:暂存区 Repository:仓库区(或本地仓库) Remot ...
- 常用git命令整理
花了一点时间来熟悉和整理git常用命令. 推荐的git学习资料:1.搜“Git Community Book 中文版.pdf”,git社区书,内容全面且简明扼要,第一推荐2.搜“Git权威指南.pdf ...
随机推荐
- StackExchange.Redis--纯干货喂饱你
Redis和StackExchange.Redis redis有多个数据库1.redis 中的每一个数据库,都由一个 redisDb 的结构存储.其中,redisDb.id 存储着 redis 数据库 ...
- 使用Spring Sleuth和Zipkin跟踪微服务
随着微服务数量不断增长,需要跟踪一个请求从一个微服务到下一个微服务的传播过程, Spring Cloud Sleuth 正是解决这个问题,它在日志中引入唯一ID,以保证微服务调用之间的一致性,这样你就 ...
- php缓存技术(减少数据库服务器压力)
静态缓存(保存在磁盘上的静态文件,用PHP生成数据放入静态文件中) a) php操作缓存 i. 生成缓存 ii. 获取缓存 iii. 删除缓存 判断目录是否存在:is_dir() dirname ...
- Android开发自学笔记(Android Studio1.3.1)—2.开始第一个Android应用
一.前言 使用Android Studio开发Android应用是一件非常简单的事情,因为它会帮你自动完成很多工作.本篇我们主要完成一个单击按钮在文本框显示当前时间的简单应用,借此来演示一下 ...
- 第七章 java基础类库
1. 日期时间: 用Calendar类. 2. 分隔符:空格.tab.回车. 3. Scanner:读取键盘输入.读取文件. 4. 系统类: System Runtime. 5. 所有的java类都 ...
- ORACLE数据泵使用详解
来源于:http://blog.sina.com.cn/s/blog_490a0c990100wh4y.html http://blog.csdn.net/jojo52013145/article/d ...
- 转 ext文件系统及块组
一.文件系统概述 1. 引导块 前文中介绍过磁盘需要进行分区和格式化,才能创建文件系统并使用,那么一块已经被各式化了分区其结构是什么样的呢?分区是按照柱面来划分的,而柱面包含的是磁道,磁道上包含的是扇 ...
- Ceph Zabbix plugin 插件和模板
由于Ceph项目中的 Celemeter 缺乏告警功能和监控平台的统一性要求, YY 云平台Ceph集群的监控需求,都是在团队已有的zabbix平台基础上开发完成的. 在已有的git开源项目基础上做了 ...
- AOP 注入失败的问题
启用了AOP 后,报这样的类似错误: Error creating bean with name 'bpmpSysUserService': Injection of autowired depend ...
- 表单提交中get和post方式的区别
表单提交中get和post方式的区别有5点 1.get是从服务器上获取数据,post是向服务器传送数据. 2.get是把参数数据队列加到提交表单的ACTION属性所指的URL中,值和表单内各个字段一一 ...