git常用命令
2016-05-09 23:53
239 查看
1、拉取项目
git clone git@XXXX
2、向仓库中添加新文件
working directory to staging area:git status; git add README
or
git add .
staging area to git repository:
git status; git commit -m "init repo"
历史提交commit日志:
a. 查看提交记录
git log
b. 查看所有的修改内容
git log -p
c. 绚丽展示
git log --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr)%Creset' --abbrev-commit --date=relative
上面的所有命令都是本地操作,并不会与远端有任何通信
3、查看已修改的内容
git diff --cached
git diff README README^
^表示向前推进一个版本
git查看修改历史
git log --oneline git show f8e2ddc
4、 直接提交到仓库
git commit -a -m "modify README"
commit -a相当于自动地add所有改动的代码,使得所有的开发代码都列于index file中,自动地删除那些在index file中但不在工作树中的文件,执行commit命令来提交
5、删除文件
本地删除rm README
从git中删除
git rm README
or
git rm -r dir
提交操作
git commit -m "delete README"
6、撤销本地修改
对于未进暂存区的文件:git checkout -- file
对于已
git add进暂存区的文件,使用
git reset file
命令取消暂存,再用
git checkout -- file
撤销本地修改,一步到位:
git checkout HEAD -- file
撤销过去5个commit
git reset HEAD~5
7、重命名文件
git mv README README1
git commit -m "rename README"
8、分支操作
创建分支:git branch new_branch
上面命令不切换到新分支上,创建并切换到新分支使用:
git checkout -b new_branch
查看当前分支:
git branch
关联远程分支:
git branch -u origin/branch
查看所有分支:
git branch -a
查看远程分支:
git branch -r
移除过期的branch:
git branch -d old-merged-feature
9、分支切换
git checkout master
10、拉取最新代码
git pull
git fetch
区别是git fetch只是将远端的信息同步到本地,并不会覆盖本地工作目录的代码,而git pull相当于fetch之后又做了一次merge
11、提交代码到远程服务器
git push
12、合并分支
git merge --no-ff new_branch
13、多次commit合并
git rebase -i head~4
-i(interactive)模式展示,操作最近4次的提交
14、代码暂存
在分支 A 上工作,突然要改分支 B 上的代码,并不想提交分支 A,而希望保留现在的改动,这时可以使用:git stash
等从分支 B 切换回分支 A 时,使用如下命令来恢复之前的改动
git stash apply <stash@{n}>
或者回到最后一个stash的状态,并删除这个stash
git stash pop
查看所有 stash
git stash list
删除最新 stash
git stash drop
删除所有 stash
git stash clear
15、打tag
查看标签git tag
本地创建标签
git tag -a v1.2.4 -m "统计近30天的ctr"
推送标签到远程仓库
git push origin v1.2.4
16、撤销已push到远端的commit
git reset --hard version_number // --hard会抛弃当前工作区的修改 // --soft的话会回退到之前的版本,但是保留当前工作区的修改,可以重新提交 git push origin branch_name --force
17、删除.idea文件,.gitignore
git rm --cached -r .idea
18、删除未被追踪的文件
git clean -fdx -f - force -d - directories too -x - remove ignored files too
19、拉去远程别人的分支
// --track is shorthand for git checkout -b [branch] [remotename]/[branch] git fetch --all git checkout --track origin/daves
20、撤销代码合并merge
git reset --hard ORIG_HEAD
21、修改已经提交但未push的信息
git commit --amend -m "new message"
最后,用阮一峰的《Git远程操作详解》里面的一张图总结:
相关文章推荐
- 使用SoapUI 测试Web Service
- Leetcode-1. Two Sum
- 电动车式的爱情,有你有我有爱、青春不再,人生无悔!
- eclipse中使用git
- Android关于销毁你所应该知道的
- Android布局中gravity与layout-gravity
- Tosat小知识
- Python网络爬虫基础知识学习
- js操作select控件大全(包含新增、修改、删除、选中、清空、判断存在等)
- JAVA将Unicode转化为UTF-8
- C++第5次实验——数组分离
- C++实验5——数组分离
- Day8
- Vim
- 新浪微博爬虫策略
- html自学笔记(css3字体以及动画)
- 跟着远叔学Spring系列(二)——Spring概述
- fork bomb
- TestNG Annotations示例
- Oracle的硬解析和软解析