• git 使用命令总结


    添加文件到缓存区
    git add .
    
    打标签
    //-a 和 -m 都可以省略
    git tag -a v1.0.0 -m '第一次打标签'
    git tag v1.0.0
    
    查看所有标签,注意标签是按字母排列的
    git tag 
    
    如果忘记打标签了,要打标签怎么办
    //先找到某一次的提交
    git log --pretty=oneline --abbrev-commit
    //然后打标签
    git tag v0.9 f52c633
    
    查看某个标签的详细信息
    git show v0.9
    
    删除标签
    git tag -d v1.0.0
    
    删除一个远程标签
    git push origin :refs/tags/v1.0.0
    
    将文件提交到master分支
    git commit -m '修改了***'
    
    查看缓存区文件状态
    git status
    
    查看哪些文件被修改了
    git diff
    
    git设置邮箱和用户名
    //配置全局用户名和邮箱
    git config --global user.name “wboss”
    git config --global user.email "github@xx.com"
    //单独配置用户名和邮箱
    git config user.name 'wboss'
    git config user.email '123@qq.com'
    //查看当前配置
    git config --list
    
    添加文件到缓存区
    git add .
    
    打标签
    //-a 和 -m 都可以省略
    git tag -a v1.0.0 -m '第一次打标签'
    git tag v1.0.0
    
    查看所有标签,注意标签是按字母排列的
    git tag 
    
    如果忘记打标签了,要打标签怎么办
    //先找到某一次的提交
    git log --pretty=oneline --abbrev-commit
    //然后打标签
    git tag v0.9 f52c633
    
    查看某个标签的详细信息
    git show v0.9
    
    删除标签
    git tag -d v1.0.0
    
    删除一个远程标签
    git push origin :refs/tags/v1.0.0
    
    将文件提交到master分支
    git commit -m '修改了***'
    
    查看缓存区文件状态
    git status
    
    查看哪些文件被修改了
    git diff
    //比较远程分支与本地分支的区别
    git diff dev origin/dev 
    
    丢弃工作区的修改
    git checkout . //所有的
    git checkout -- file
    
    删除文件

    方法1

    git rm file
    

    方法2 删除后commit

    克隆远程仓库
    克隆远程仓库
    git clone git@github.com:michaelliao/gitskills.git
    克隆远程某个分支上的仓库
    git clone -b dev git@github.com:michaelliao/gitskills.git
    
    关联git远程仓库
    //注意这里的origin可以改成其他的,比如github
    git remote add origin git@github.com:michaelliao/learngit.git
    
    删除关联的远程库
    git remote rm origin
    
    查看远程库的信息
    git remote -v
    
    将提交历史整理成直线
    git rebase
    
    推送标签到远程

    推送一个本地标签

    git push origin v1.0.0
    

    推送全部未推送过的本地标签
    git push origin --tags

    把本地master分支推送到远程仓库对应的master分支里面
    git push -u origin master
    git push origin master
    //如果以前没有提交记录需要执行
    git pull origin master --allow-unrelated-histories
    
    如果推送到远程仓库失败,检查远程库是否存在这个分支
    //先抓取最新代码
    git pull
    //在本地创建与远程仓库一样的分支
    git checkout -b branch-name origin/branch-name
    //建立本地分支与远程分支的关联
    git branch --set-upstream branch-name origin/branch-name
    //继续pull
    git pull
    
    处理pull留下的mergin
    //显示工作目录与远程仓库之间的差异
    git diff HEAD 
    //显示上一次提交之前工作目录与git仓库之间的差异
    git diff HEAD^
    //显示索引文件与git仓库之间的差异
    git diff –cached
    
    创建dev分支,并且切换到dev分支
    git checkout -b dev
    

    相当于

    //创建dev分支
    git branch dev 
    //切换到dev分支
    git checkout dev
    
    查看当前分支
    git branch
    
    合并分支
    //如果当前分支是master,则将dev分支合并到master分支上
    //--no-ff -m '' 表示添加合并信息记录,避免合并信息的丢失
    git merge --no-ff -m '合并信息' dev
    // 将远程分支合并到本地
    git merge origin/dev 
    
    删除分支
    git branch -d dev
    
    查看git分支合并图
    git log --graph
    
    暂存工作现场
    git stash
    
    修复bug后查看保存的工作现场
    git stash list
    
    查看堆栈中最新保存的stash和当前目录的差异
    git stash show
    
    恢复工作现场,并把stash里的内容删除掉

    方法一

    git stash apply stash@{0}
    git stash drop stash@{0}
    

    方法二,会将堆栈中的内容删除,不推荐使用

    将当前stash中的内容弹出,并应用到当前分支对应的工作目录上
    git stash pop
    
    丢弃一个没有被合并过的分支
    //当前是在master分支上
    git branch -D dev
    
    git reset --hard回滚以后怎么再回去
    //找到需要恢复的信息对应的commitid
    git log -g
    reset --hard 4803586
    把到commitid为止的代码、各种提交记录等信息都恢复到了dev分支上
    git branch dev 4803586
    
    git忽略规则

    .gitignore 添加忽略文件,可以套用模板https://github.com/github/gitignore

    //git 强制推送
    git add -f readme.md
    

    必须将.gitignore放置在版本库里

    问题

    You do not have permission to pull from the repository via HTTPS
    解决:修改window凭据

    (non-fast-forward)
    解决:

    1. git fetch origin debug
    2. git merge origin debug
    3. git pull origin debug
    参考

    https://www.liaoxuefeng.com/wiki/896043488029600
    https://www.cnblogs.com/taohuaya/p/10622471.html

  • 相关阅读:
    全文检索 部署及使用
    mysql 数据库常见的一些基本操作 !详不详细你说了算!
    Django 语法笔记
    CentOs Linux 对于 修改 yum源 为 阿里
    小白老凯,初出茅庐!请多关照!简单分享一些 mysql 数据库的安装操作!请给为大神雅正!
    sql server 之一条Sql语句引发的悲剧
    翻译高质量JavaScript代码书写基本要点(转载)
    翻编JavaScript有关的10个怪癖和秘密(转载)
    IIS7.5部署ASP.NET失败
    linq to sql报错,
  • 原文地址:https://www.cnblogs.com/TomAndJerry/p/10909391.html
Copyright © 2020-2023  润新知