前言
做iOS开发将近三年了, 版本控制Git和SVN都有所涉猎, SVN使用的一团糟糕稀里糊涂, 这里不谈, 今天的主角是Git, 之前一直都多使用的是Source Tree这个工具, 对命令少有涉及, 这次详细了解下, 以作记录.
安装
Xcode安装,Xcode偏好设置中找到Downloads,选择“Command Line Tools,点击Install就可以完成安装了- 使用
Homebrew安装, 没有安装Homebrew的同学请戳Homebrew安装
输入git version命令查看是否安装成功, 成功显示如下:
常用命令
git help
老规矩先介绍help命令, 如果你忘记某个命令的作用, git help命令会是你最得力的助手, 比如在控制台输入git help status, 结果如下:
git config
顾名思义, git config是用于修改git配置的
git config --local: 修改当前仓库的配置 读取的配置文件在当前项目目录中.git/config
git config --global: 修改全局的配置, 配置文件目录
~/.gitconfig
git config --system: 修改系统的配置, 配置文件目录为``
涵盖范围 system > global > local, 缺省时默认为local.
git config --local --list :查看当前项目的配置
git config --global --list: 查看全局的配置
git config --local user.name "username": 更改本地仓库的名字
git config --local user.email "emailaddress@xxx.com": 更改本地仓库的邮箱
git init
该命令把当前目录变成git可以管理的仓库.
现在git仓库已经建立好了, 我们可以先创建一个README.md文件.
echo "# Project-test" >> READMME.md
改echo命令是向指定文件README.md输入文本.
git add
git add命令是用于将文件添加到仓库.
git add *添加所有的已改动文件到仓库
git commit
git commit命令用于把文件提交到仓库.
git commit -m "msg": -m后添加的是本次提交的说明, 方便于之后从历史记录里找到记录.
更加详细的使用说明: git commit --help:
git commit -a -m "msg": -a 提交所有的文件
git rm
git rm命令用于删除文件,同时还会将这个删除操作记录下来
git status
git status: 该命令用于查看文件的状态
git status -s: 查看文件的简写状态
M - 被修改,A - 被添加,D - 被删除,R - 重命名,?? - 未被跟踪
git diff
顾名思义, git diff命令, 用于查看文件具体修改了什么
git diff HEAD -- filename]命令可以查看工作区和版本库里面最新版本的区别
git checkou – filename
git checkout --filename命令用于放弃更改
git log
git log命令用于显示提交的提示记录,排序时间由近及远.
git reflog
git reflog命令用于查看最近的历史操作记录.
git reset
git reset命令用于回退版本.
git reset --hard回溯到指定状态,只要提供目标时间点的哈希值.
git reset --soft
git reset --mixed
我们可以使用上面的git log命令查看我们想要回退的版本, HEAD表示的是当前版本,上一个版本可以使用HEAD~表示, 上上个版本是HEAD~~,回退N个版本可以使用HEAD~N.
现在我们执行会退到上一个版本:
作者做iOS开发近三年,此前多用图形化工具,此次详细了解Git命令并作记录。介绍了Git的安装方法,还列举了git help、git config、git init等常用命令,包括其作用、使用方式及部分命令的参数含义,如用于版本回退等。
2239

被折叠的 条评论
为什么被折叠?



