Git是开源的分布式版本控制系统,可以很方便在笔记本或电脑上操作Github。这个简单说明书总结了Git的常用命令,以便各位能做个快速的参考!
安装GIT
GitHub提供了包含有图形用户界面的桌面客户端,并为更高级场景提供了最常用的版本库操作和自动更新命令。
Windows版本的GitHub
https://windows.github.com
Mac版本的GitHub
http://mac.github.com
其他版本的Git
Git为Linux和POSIX系统发布的可用版本在GIT SCM官网上。
http://git-scm.com
配置工具
为所有本地版本库配置用户信息。Git的设置文件为.gitconfig。全局配置在用户主目录,项目配置在项目目录。
1 2
| $ git config --global user.name "[name]" 设置提交代码时的用户名称
|
1 2
| $ git config --global user.email "[email address]" 设置提交代码时的电子邮箱
|
1 2
| $ git config --global color.ui auto" 设置命令提示的输出颜色
|
建立版本库
开始建立一个新的版本库或从指定的URL中获取一个新的版本库。
1 2
| $ git init [project-name] 按指定名称建立一个新的版本库
|
1 2
| $ git clone [url] 下载一个项目以及其完整的历史版本
|
显示信息
审查要提交的编辑和草稿
1 2
| $ git status 显示要提交的所有新的和更改的文件
|
1 2
| $ git add [file] 将要版本控制的文件加入到暂存区中
|
1 2
| $ git diff 显示暂存区中和最新版本的文件之间的差别
|
1 2
| $ git reset [file] 将文件从暂存区中移除,但保留文件的内容
|
1 2
| $ git commit -m "[descriptive message]" 将暂存区中文件提交到版本库中
|
分支操作
分支操作的一系列命令
1 2
| $ git branch 列出当前版本库中所有本地分支
|
1 2
| $ git branch 【branch-name】 建立一个新的分支
|
1 2
| $ git checkout [branch-name] 切换到指定分支并更新工作区目录
|
1 2
| $ git merge [branch] 将指定分支的历史记录合并到当前分支中去
|
1 2
| $ git branch -d [branch-name] 删除指定的分支
|
撤销
重分配和删除版本控制文件
1 2
| $ git rm [file] 从工作区删除文件,并将删除放入在暂存区
|
1 2
| $ git rm --cached [file] 将文件移除版本控制,但保留本地文件在工作区
|
1 2
| $ git mv [file-original] [file-renamed] 修改文件名,并将这个改名放在暂存区
|
忽略文件
将临时文件和目录排除在版本控制之外
1 2 3 4
| *.log build/ temp-* 一个名为.gitignore的文本文件,它会将符合指定格式匹配的文件和路径移除在版本控制中
|
暂存区管理
暂存区可提交或恢复未完成的改变
1 2
| $ git stash pop 恢复最近的临时保存的文件
|
1 2
| $ git stash list 显示暂存区中的所有改变
|
1 2
| $ git stash list 放弃最近的暂存区中的改变
|
日志查看
浏览和监控项目文件中的变化
1 2
| $ git log --follow [file] 列出指定文件的历史版本(包括更名)
|
1 2
| $ git diff [first-branch]...[second-branch] 显示2个分支中内容的不同之处
|
1 2
| $ git show [commit] 输出指定提交的原始数据和内容的改变
|
重做提交
擦除錯誤和草稿中历史版本
1 2
| $ git reset [commit] 重置在[commit]后的所有提交,但保留本地改变
|
1 2
| $ git reset 放弃所有历史版本和改变,回退到指定的[commit]
|
同步改变
注册版本库中的书签并交换历史版本
1 2
| $ git fetch [bookmark] 从指定版本库的[bookmark]中下载所有历史版本
|
1 2
| $ git merge [bookmark]/[branch] 合并分支书签到当前本地分支中去
|
1 2
| $ git push [alias] [branch] 提交所有本地分支到GitHub中去
|