git 常用命令
来源:互联网 发布:java程序员职位描述 编辑:程序博客网 时间:2024/06/05 16:24
1.安装 git
yum install git
2.版本管理
- 1.创建版本库
git init
2.添加文件到版本库
git add readme.txt
- 3.把文件提交到版本库
git commit -m "comment"
3.仓库关联
- 1.关联本地仓库到远程仓库
git remote add origin git@github.com:michaelliao/learngit.git
- 2.1.第一次关联本地仓库到远程仓库
git push -u origin master
- 2.2.之后推送
git push origin master
4.从远程仓库克隆
git clone git@github.com:michaelliao/gitskills.git
5.分支操作
- 1.创建分支
git branch dev
- 2.切换分支
git checkout dev
- 3.创建并切换分支
git checkout -b dev
- 4.查看分支
git branch
- 5.合并分支
- 1.切换到目标分支
git checkout master - 2.合并制定分支到当前分支
git merge dev
- 1.切换到目标分支
- 6.删除分支
- 1.正常删除
git branch -d dev - 2.强制删除
git branch -D dev
- 1.正常删除
6.时光穿梭机
- 1.查看git当前状态
1.查看git状态git status2.查看分支合并图git log --graph --pretty=oneline --abbrev-commit
- 2.查看修改 git diff
git diff readme.txt
- 3.版本回退
- 1.查看版本历史:从近到远
全部信息
git log
简单信息
git log --pretty=oneline - 2.回退到制定版本
回退到上一个版本
git reset --hard HEAD^
回退到上上版本
git reset --hard HEAD^^
回退到指定 commid_id 版本:版本前几位即可
git reset --hard 3628164 - 3.查看执行过的 git 命令
git reflog - 4.丢弃工作区的修改:– 一定要加上
git checkout -- readme.txt - 5.把暂存区的修改撤销掉,重新放回工作区
git reset HEAD readme.txt - 6.删除文件
1.移除文件
git rm test.txt
2.提交移除动作
git commit -m "remove test.txt" - 7.恢复被删除的文件
git checkout -- test.txt
- 1.查看版本历史:从近到远
7.bug 分支管理
- 1.存储当前正在进行的修改
git stash
- 2.切换到bug分支
git checkout master
- 3.修复并提交bug分支,删除bug分支
1.新建 bug 分支:git checkout -b issue-1012.修改bugvi readme.txt3.提交修改git add readme.txtgit commit -m "fix bug 101"4.合并修改到主分支git checkout mastergit merge --no-ff -m "merge bug fix 101" issue-1015.删除bug分支git branch -d issue-101
- 4.切换到工作分支
git checkout dev
- 5.还原之前的修改
1.查看git状态git status2.查看驻存去git stash list3.回复驻存区域3.1.恢复最近驻存并删除驻存git stash pop3.2.恢复驻存区git stash apply stash@{0}3.3.删除驻存区git stash drop stash@{0}
8.远程分支查看
- 查看远程信息:git remote
- 查询远程分支详细信息:git remote -v(显示可以拉取和推送的分支)
- 推送本地分支到远程分支
git push origin master/dev
- 创建本地的远程分支的分支
git checkout -b dev origin/dev
- 更新最新提交,然后再推送
- git pull
如果拉取失败:There is no tracking information for the current branch建立本地和远程连接之间的对应关系 git branch --set-upstream dev origin/dev 再次拉取最新提交 git pull
9.多人协作模式
- 首先,可以试图用git push origin branch-name推送自己的修改;
如果推送失败,则因为远程分支比你的本地更新,需要先用git pull试图合并;
如果合并有冲突,则解决冲突,并在本地提交;
没有冲突或者解决掉冲突后,再用git push origin branch-name推送就能成功!
如果git pull提示“no tracking information”,则说明本地分支和远程分支的链接关系没有创建,用命令git branch –set-upstream branch-name origin/branch-name。
10.标签管理
- 1.为什么还要引入tag?
- tag就是一个让人容易记住的有意义的名字,它跟某个commit绑在一起。
2.打标签
1.切换到要打标签的分支上
git checkout master
打标签
1.默认在最新提交上打标签git tag v1.02.在指定的提交上打标签2.1.找出提交的commit idgit log --pretty=oneline --abbrev-commit2.2.打标签git tag v0.9 62249373.创建带有说明的标签git tag -a v1.0 -m "version 0.1 release" 6224937
查看所有标签
git tag
查看标签信息
git show v0.9
3.删除标签
1.删除本地标签
git tag -d v0.9
2.删除远程标签
1.删除本地git tag -d v0.92.从远程删除git push origin :refs/tags/v0.9
4.推送标签到远程
推送单个标签到远程git push origin v1.0推送所有标签到远程git push origin --tags
11.使用多个远程分支
- 关联本地分支到远程分支
1.关联本地分支到远程分支git remote add origin git@gitee.com:liaoxuefeng/learngit.git2.如果报错:已经关联其他远程分支了git remote add origin git@gitee.com:liaoxuefeng/learngit.gitfatal: remote origin already exists.3.删除已关联远程分支git remote rm origin4.再关联到远程分支git remote add origin git@gitee.com:liaoxuefeng/learngit.git
- 关联本地分支到多个远程分支
1.git 给远程分支默认起的名字叫 origin,如果使用多个分支那么需要给每个不同分支起不同的名字2.删除远程分支git remote rm origin3.关联到github远程分支库:名字叫githubgit remote add github git@github.com:michaelliao/learngit.git4.关联分支到码云git remote add gitee git@gitee.com:liaoxuefeng/learngit.git5.查看远程仓库会看到2个仓库git remote -v6.如果要推送到 githubgit push github master7.推送都码云git push gitee master
12.自定义 git
- 1.让 git 显示颜色
git config --global color.ui true
- 2.忽略特殊文件
- 建立 .gitignore
- 编写内容
# Python:
*.py[cod]
*.so
*.egg
*.egg-info
dist
build - 供参考的 .gitignore 例子:https://github.com/github/gitignore
- 把 .gitignore 提交到 git
- 强制加入被忽略的文件
git add -f App.class - 检查哪个规则忽略了指定文件
git check-ignore -v App.class
13.配置别名–global:参数是全局参数,也就是这些命令在这台电脑的所有Git仓库下都有用
- 1.git status 使用 git st
git config --global alias.st status
- 2.git 默认缩写
co->checkoutci->commitbr->branch
- 3.unstage:撤销暂存区修改
git config --global alias.unstage 'reset HEAD'
- 4.git last:显示最后提交信息
git config --global alias.last 'log -1'
- 5.显示git提交历史的树
git config --global alias.lg "log --color --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --abbrev-commit"
- 6.查看 git 配置文件(当前仓库,当前用户在用户主目录下的一个隐藏文件.gitconfig中)
cat .git/config [core] repositoryformatversion = 0 filemode = true bare = false logallrefupdates = true ignorecase = true precomposeunicode = true[remote "origin"] url = git@github.com:michaelliao/learngit.git fetch = +refs/heads/*:refs/remotes/origin/*[branch "master"] remote = origin merge = refs/heads/master[alias] last = log -1
- 7.删除别名
直接把对应的.git/config中的 alias 里面的行删掉即可
阅读全文
0 0
- git 常用命令
- Git常用命令
- git 常用命令
- git 常用命令
- git 常用命令
- git 常用命令
- GIT常用命令
- git 常用命令
- git 常用命令
- Git 常用命令
- git 常用命令
- Git常用命令
- Git常用命令
- git 常用命令
- Git 常用命令
- git常用命令
- git 常用命令
- Git 常用命令
- OkHttp二次封装请求 拦截器
- 算法爱好者——算法题:四元组 ? 待解决
- cmd命令大全
- java计算工具类UnitProPlus
- 'Starting Tomcat v8.0 Server at localhost' has encountered a problem
- git 常用命令
- fcn训练遇到的问题总结
- 将xml文档内容封装到对象中
- opengl应用:VC6.0找不到glut.dll
- 2017-12-17 ITween第一天
- 网页上文件下载功能的实现
- 算法爱好者——算法题:最长公共字串 ? 待解决
- 图结构
- Spring配置文件中头文件