zoukankan      html  css  js  c++  java
  • mac os 利用ssh 搭建git server服务器详细教程,以及git基本用法

    详细讲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

  • 相关阅读:
    【转】我该 不该学习VULKAN
    游戏开发内功秘籍记录
    VS 配置外部DLL的引用路径【可执行文件的环境路径】
    OpenGL3.x,4.x中使用FreeImage显示图片的BUG-黑色,或颜色分量顺序错乱
    C++风格与C风格文件读写效率测试-vs2015,vs2017
    【转】矩阵的几何解释
    android 线程间通信
    android 网络
    安卓 碎片 如何实现类似 活动 栈的 进栈 出栈
    安卓 内容提供者 观察者 解析器
  • 原文地址:https://www.cnblogs.com/wangjuneng/p/4551100.html
Copyright © 2011-2022 走看看