Git简单总结
这篇文章分为两部分,一是搭建git服务器,二是git命令,主要是记录了一下我搭建git服务器流程和用到的相关命令。
一、Mac环境下搭建Git服务器
这里简单说一下Mac环境下通过git+ssh搭建服务器的流程。
1、打开远程登陆
系统偏好设置 -> 共享 -> 远程登陆
2、添加git用户
这一步不加上也可以,但是为了更好的管理和安全着想,最好加上一个git用户
系统偏好设置 -> 用户与群组 -> 添加名为git的用户
3、初始化一个空仓库
在git用户目录下创建一个repos文件夹专门用来管理仓库
|
|
4、添加密钥
在git服务端添加客户端的公钥后,以后git访问不需要密码了,下面是客户端与服务端的操作。
客户端:
使用ssh-keygen
命令生成密钥,执行完后会生成id_rsa
和id_rsa.pub
两个文件,其中id_rsa
是私钥,id_rsa.pub
是公钥。客户端将id_rsa.pub
文件交给git服务端就行了。
服务端:
将客户端的id_rsa.pub
中的内容放到/Users/git/.ssh/authorized_keys
文件中。主要,客户端每个公钥占用独立的一行,有时复制会出现问题,可以使用cat id_rsa.pub >> /Users/git/.ssh/authorized_keys
命令。
5、客户端使用
到这一步,我们的git服务环境其实已经搭建好了,下面来使用。
首先,我们需要知道服务端的用户和git项目的路径
|
|
这里用户是git,路径是/Users/git/repos/test.git
下面,我们就可以在客户端clone项目了。这里因为我是在本机测试,所以用的是localhost,一般都是用服务器的ip或者域名
。
|
|
这里就说明服务器已经搭建好了。
遇到问题(这里是我在linux系统搭建时遇到的问题):remote: error: insufficient permission for adding an object to repository database ./objects
权限的问题,查看服务器对应的仓库的父文件夹是否属于git用户,git是否拥有可写权限
linux系统搭建git服务器,请参考搭建Git服务器
二、Git命令
1、下面是git操作的简单流程,里面的命令都是经常用到的
|
|
2、分支是git中一个很强大的功能,这里列出我曾经使用过的相关分支命令,也许你会用到,想了解更多分支的知识请进入Git详解之三 Git分支
|
|
3、查看git某个版本的内容
当我添加Cocoapods私有库的时候,想查看从pod某个版本下来的内容与我对应版本内容是否相同,这个时候,我怎么操作git?
其实,git克隆下来的内容拥有所有版本内容,我们如果想查看某个tag版本的内容,可以使用git checkout tag-version
命令,将这个版本当做一个分支来查看,只是这个时候它只是一个快照,我们不能修改代码。
|
|
如果我们想修改这个版本的内容时,那么我们可以通过创建一个新的分支,这个新的分支是以某个tag版本为准,可以在新的分支下修改代码
|
|