Git基本操作

参考内容:廖雪峰Git教程 、Git Cheatsheet

初始化操作

git config -global user.name “name” #设置提交者名字
git config -global user.email “yourname@email.com” #设置提交者邮箱
git config -global core.editor “editor” #设置默认文本编辑器
git config -global merge.tool “tool” #设置解决合并冲突
git config user.name #查看提交着名字
git config user.email #查看提交者邮箱

创建新版本库

git clone url #克隆远程版本库

在Git项目上很多时候可以直接使用https url克隆到本地,也可以用SSH url克隆到本地。这两种方法的区别在于:使用https克隆对初学者比较方便,复制https url然后到git Bash里面直接clone命令克隆到本地即可。但是每次fetch和push代码都需要输入账号密码。使用SSH url克隆却需要在克隆的时候先设置好SSH key,因此,如果你想要使用SSH克隆的话,你必须是这个项目的拥有着。

修改和提交

git add .#添加所有改动过的文件
git add #添加指定的文件
git mv #文件重命名
git rm #删除文件
git rm -cached #停止跟踪文件但不删除
git commit -m #提交指定文件
git commit -m “commit message” #提交所有更新过的文件
git commit -amend #修改最后一次提交
git commit -C HEAD -a -amond #增补提交(不会产生新的提交历史纪录)

查看提交历史

git log # 查看提交历史
git log -p #查看指定文件的提交历史

git show 查看某次提交的修改内容
git blame #以列表方式查看指定文件的提交历史
gitk #查看当前分支历史纪录
gitk #查看某分支历史纪录
gitk –all #查看所有分支历史纪录
git branch -v #每个分支最后的提交
git status #查看当前状态
git diff #查看变更内容

撤销操作

git reset -head HEAD #撤销工作目录中所有未提交文件的修改内容
git checkout HEAD #撤销指定的未提交文件的修改内容
git checkout HEAD. #撤销所有文件
git revert #撤销指定的提交

分支与标签

git branch #显示所有本地分支
git checkout #切换到指定分支或标签
git branch #创建新分支
git branch -d #删除本地分支
git tag #列出所有本地标签
git tag #基于最新提交创建标签
git tag -d #删除标签

合并

git merge #合并指定分支到当前分支
git rebase

删除未监控的文件(untracked files)

git clean -f #删除untracked files
git clean -fd #连同untracked的目录也一起删除
git clean -xfd #连gitignore的untrack文件/目录也一起删除

注意:在使用上述命令时,最好加上 -n(如git clean -nf)查看要删除的文件是哪些,防止被误删

远程操作

git remote -v  #查看远程版本库信息
git remote show #查看指定远程版本库信息
git remote add #添加远程版本库
git fetch #从远程库获取代码
git pull #下载代码及快速合并
git push #上传代码及快速合并
git push -tags #上传所有标签
git fetch:相当于从远程获取最新版本到本地,不会自动合并
git pull:获取最新版本代码后会自动合并代码

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s