GIT优势:分布式、多分支、速度快灵活、Git中的绝大多数操作都只需要访问本地文件和资源,不用连网,所以处理起来速度飞快
一、创建项目
git init ? ? ? ? ? ? ? ? ?# 将一个目录初始化为 Git 仓库
git clone [url] ? ? ? ? ? # 复制一个git仓库
二、基本快照
git add [file] ? ? ? ? ? ?# 添加文件到缓存
git status -s ? ? ? ? ? ? # 查看你的文件在工作目录与缓存的状态,返回的文件状态 A 添加 D 被删除 M 被修改 R 重命名等
git diff ? ? ? ? ? ? ? ? ?# 显示已写入缓存与已修改但尚未写入缓存的改动的区别
git commit -m 'my hola mundo changes' ? ?# 存储缓存内容的快照
# 提交前需要配置git账号
git config --global user.name 'Your Name'
git config --global user.email you@somedomain.com
git reset HEAD -- a.txt ? # 取消缓存已缓存的内容(将缓存区恢复为我们做出修改之前的样子)
git rm ? ? ? ? ? ? ? ? ? ?# 将文件从缓存区移除,会同时删除工作目录的文件
三、分支管理
git branch ? ? ? ? ? ? ? ?# 查看当前所有分支
git branch [name] ? ? ? ? # 创建分支
git checkout [name] ? ? ? # 切换到指定分支,在分支1提交的文件不会在分支2看到,切换分支后相应的工作目录文件也会切换
[实例]
git branch -d [name] ? ? ?# 删除分支
git merge [name] ? ? ? ? ?# 将name分支的文件内容合并到你的当前分支
git log --oneline [分支name] ?# 查看commit提交的日志
git tag -a v0.9 ? ? ? ? ? # 给当前版本添加标签
四、分享与更新项目
git remote ? ? ? ? ? ? ? ?# 列出远程仓库
git remote add [alias] [url] ? ? ?# 添加远程仓库,如 git remote add github git@github.com:schacon/hw.git
git remote rm [alias] ? ? # 删除别名alias对应的远程仓库
git fetch [alias] ? ? ? ? # 从远端仓库下载新分支与数据
git pull ? ? ? ? ? ? ? ? ?# 从远端仓库提取数据并尝试合并到当前分支
git pull origin master:brantest ? # 将远程主机 origin 的 master 分支拉取过来,与本地的 brantest 分支合并
git push [alias] [branch] # 推送你的新分支与数据到某个远端仓库
五、检查与比较
git log --author ? ? ? ?# 只寻找某个特定作者的提交
git log --since --before # 根据日期过滤提交记录
git log --grep ? ? ? ? ? # 根据提交注释过滤提交记录
GIT文档推荐:http://gitref.justjavac.com/basic/ ?
|