详细讲mac 连接mac的git操作

首先在服务端上

第一:新建一个仓库

1, cd /Users/userName/projects

用linux命令进入一个你想要创建与他人共享的文件夹。

2,sudo git --bare init

建立一个git仓库.

git init –bare”方法创建一个所谓的裸仓库,之所以叫裸仓库是因为这个仓库只保存git历史提交的版本信息,而不允许用户在上面进行各种git操作,如果你硬要操作的话,只会得到下面的错误(”This operation must be run in a work tree”)

3,给这个git仓库所在文件夹递归赋予权限

cd .. && sudo chmod -R 777 projects

4, 由于git默认是不让其它人push到本地仓库的。所以你要赋予允许别人push的权限

步骤如下

(1)cd /Users/userName/projects

进入本地仓库下

(2)sudo vim .git/config

如果你用git init建立的仓库

sudo vim config

如果你用git init --bare建立的仓库

用vim打开git的配置文件。

这边插入一个小教程关于vim的。vim是一个强大的编辑器用一些快捷的方法会很快完成你给它的任务

vim操作教程

~1,进入vim后如果你没有在键盘上按过其它按键的话。可以先按下键盘上shift+g;(会让光标移动到文本的最后一行的行头。)

~2,按一下o键;(在当前行下面插入一行并进入输入模式)

~3,添加

[receive]
    denyCurrentBranch = ignore

在客户端上

1,cd gitTest

进入要存放git文件的仓库。

2,sudo git clone name@192.168.x.xx:/path/server_project_name /path/local_project_name

sudo:为以管理员权限运行。

git clone:从远程把一个git仓库拷贝过来。

name@192.168.x.xx:              name为服务端用户的名字然后+@+服务端的ip地址

:server_project_name local_project_name :服务端git文件所在的路径         和本地git仓库路径与名字

3,cd  local_project_name(刚才你起的git本地git仓库名字)

进入你的git所在文件。

6,可以试着添加一些东西到git仓库里。这里添加了test1,test2两个相同文件

7,输入git status 查看本地变动

Untracked files下面的文件就是还没有提交的文件。

8,sudo git add test1

告诉git你知道“test1”文件 被新添加进来。 add命令表示 提交确认 有新的文件被“添加”或者“原来”有的文件被“修改”了。

9,git status (查看当前状态)

Changes to be committed:

下面的是你已经提交的文件。

Untracked files:

下面是你还没有提交的文件。

10,sudo git add .

当然文件一多你就不可能这样一条条的提交了。git给我我们很多方式。如果你确定所有文件都可以提交那么你就用”sudo git add .“来添加全部。

git还提供多种方式按需求匹配添加文件,参考如下

http://imtx.me/archives/1297.html

11, sudo git commit -m'add 2 files'

然后是确认正式提交所有内容。

-m后面表示提交时候的批注。这个最好要越详细约好。以后出了错误可以回来看到是哪个开发者的错误,还有他的修改思路。

12, sudo git pull origin master

然后在提交给服务端之前先要,从服务端把仓库代码拉到本地做比较。有没有冲突(不同开发者修改了同一个文件称为冲突)

冲突解决参考一下链接

http://blog.csdn.net/u012150179/article/details/14047183

如果报如下错误:

fatal: Couldn't find remote ref master
fatal: The remote end hung up unexpectedly

因为还没有任何人提交过代码,第一次要先直接push代码上去就可以了。

13,sudo git push origin master

把最终代码放到仓库里边替换仓库里面的代码

转载:http://blog.csdn.net/liuyuyefz/article/details/17025905

mac os 利用ssh 搭建git server服务器详细教程,以及git基本用法的更多相关文章

  1. Mac OS利用ssh访问ubuntu虚拟机及云端操作

    1.桥接模式 将该虚拟机的网口设置成桥接模式(Bridged Adapter),以确保主机可以ping通虚拟机: 2.安装ssh 在ubuntu虚拟机上安装ssh server: sudo apt-g ...

  2. Mac OS X Yosemite 10.10 配置 Apache+PHP 教程注意事项

    刚更新到了 Mac OS X Yosemite 10.10,发现运行Apache出现了一些问题,修正一下! 教程基于 Mac OS X Mavericks 10.9.X,移步:Mac OS X Mav ...

  3. 已经在Git Server服务器上导入了SSH公钥,可用TortoiseGit同步代码时,还是提示输入密码?

    GitHub虽好,但毕竟在国内访问不是很稳定,速度也不快,而且推送到上面的源码等资料必须公开,除非你给他交了保护费:所以有条件的话,建议大家搭建自己的Git Server.本地和局域网服务器都好,不信 ...

  4. Mac OS X上搭建Apache、PHP、MySQL的Web服务器

    mac OS 系统太帅了,安装php的环境如此简单,大赞一个! 转载自http://jingyan.baidu.com/article/39810a23e1939fb636fda6a9.html 在M ...

  5. mac 通过 终端 ssh 远程连接 centos 服务器

    mac 通过 终端 ssh 远程连接 centos 服务器 在终端下输入 ssh -l root 204.74.*.*      就可以连接了,这是端口没变的情况,还是原来的22 ssh -p 448 ...

  6. Mac OS X Terminal 101:终端使用初级教程

    Mac OS X Terminal 101:终端使用初级教程 发表于 2012 年 7 月 29 日 由 Renfei Song | 文章目录 1 为什么要使用命令行/如何开启命令行? 2 初识Com ...

  7. 【转】Mac OS X Terminal 101:终端使用初级教程

    最近学习苹果认证的<Mac OS X Support Essentials>教程,看到 Command Line 一节有很多实用的知识,下面选取一部分翻译 + 笔记,整理成此文. 你可以整 ...

  8. 搭建SVN服务器详细教程

    搭建SVN服务器详细教程 本教程会从最基本的下载安装到上传代码,下载代码这条线来详细讲述如何完成SVN服务器的搭建 下载并安装VisualSVN server 下载并安装TortoiseSVN 导入项 ...

  9. Apache搭建http网站服务器入门教程

    Apache搭建http网站服务器入门教程 准备工具 一台带有Linux系统的主机,这里使用CentOS 7.1 64位系统 一个备案过的域名,这里使用www.hellopage.cn 一台可以访问网 ...

随机推荐

  1. C# 后台发送get,post请求及WebApi接收

    后台发送get请求 1.发送带参数的get请求 /// <summary> /// 发送get请求 参数拼接在url后面 /// </summary> /// <para ...

  2. DOTween实现缓动变值动效

    DOTween.To(getter, setter, to, float duration) 是常用的一个变值方法(一定时间将某变量从起始值到终点值进行变化),可以便捷实现 滚分.涨进度条 等功能 但 ...

  3. Exchange ProxyLogon漏洞分析

    Exchange ProxyLogon漏洞分析 前言 续前文继续学习Exchange漏洞 Proxyshell 影响范围 Exchange Server 2019 < 15.02.0792.01 ...

  4. 【VUE】VUE使用常见问题搜集

    文章目录 1.日期格式化 2.引用JSON文件中的数据 1.日期格式化 安装插件,官网:Moment.js npm install moment --save 示例: //Sat Mar 14 202 ...

  5. Django_通用视图(五)

    参考官网的投票系统,按照综合案例的流程创建应用polls,主要模块代码如下: test1/polls/models.py import datetime from django.db import m ...

  6. spring cloud bus 消息总线 动态刷新配置文件 【actuator 与 RabbitMQ配合完成】

    1.前言 单机刷新配置文件,使用actuator就足够了 ,但是 分布式微服务 不可能是单机 ,将会有很多很多的工程 ,无法手动一个一个的发送刷新请求, 因此引入了消息中间件 ,常用的 消息中间件 是 ...

  7. [GKCTF2020]EZ三剑客-EzNode&[GYCTF2020]Ez_Express

    写在前面 Nodejs基础一点没有做题还是很难下手的,要学的还很多 [GKCTF2020]EZ三剑客-EzNode 知识点 1.settimeout溢出 2.沙盒逃逸 题解 打开题目,看源代码 app ...

  8. C#图片转成流

    Bitmap b = new Bitmap(Server.MapPath(ppath)); Stream ms = new MemoryStream(); b.Save(ms, System.Draw ...

  9. Java学习小总结

    本学期主要学习Java程序语言及Javaweb相关知识,其中有相当一部分内容是暑假假期的学习内容,以下主要介绍一些Javaweb学习的总结. 以下教程均为个人建议(当然,适合自己的最好) 一.环境配置 ...

  10. 从SQL Server数据库导出SQL语句

    不同于直接 备份/恢复 或者 导入/导出 数据库操作. 新版本SQL Server客户端中还可以生成相对应的SQL语句. 非常方便与查看和与其他人共享. 连接上数据库后, 右击数据库, 选择 Gene ...