zoukankan      html  css  js  c++  java
  • git常用命令

    1.git 基本概念:
    工作区:改动(增删文件和内容)
    暂存区:输入命令:git add 改动的文件名,此次改动就放到了‘暂存区’(新增的文件)
    本地仓库(简称:本地):输入命令:git commit 此次修改的描述,此次改动就放到了’本地仓库’,每个commit,我叫它为一个‘版本’。
    远程仓库(简称:远程):输入命令:git push 推送到远程仓库,此次改动就放到了‘远程仓库’ git pull 拉去远程仓库
    commit-id:输出命令:git log,最上面那行commit xxxxxx,后面的字符串就是commit-id
    2.工作区和暂存区的常用命令:

    展示工作区和暂存区的不同(输出工作区和暂存区的different(不同)。)
    git diff
    还可以展示本地仓库中任意两个commit之间的文件变动:
    git diff <commit-id> <commit-id>
    两个分支的差异:
    git diff <branch a> <branch b>
    放弃工作区的修改
    git checkout <file-name>
    放弃所有修改:
    git checkout .
    强制删除untracked的文件
    git clean <file-name> -f
    强制删除untracked的目录
    git clean <directory-name> -df
    展示所有tracked的文件
    git ls-files -t
    展示所有untracked的文件
    git ls-files --others

    3.有关commit的一些常用命令:
    查看commit历史

    git log
    重设第一个commit(也就是把所有的改动都重新放回工作区,并清空所有的commit,这样就可以重新提交第一个commit了)
    git update-ref -d HEAD
    回到某个commit的状态,并删除后面的commit (但不丢弃更改)
    git reset <commit-id>
    回到某个commit的状态(丢弃更改)
    git reset —hard <commit-id>
    修改上一个commit的描述
    git commit --amend
    展示简化的commit历史
    git log --pretty=oneline --graph --decorate --all
    在commit log中查找相关内容
    git log --all --grep='<text>'
    commit历史中显示Branch1有的,但是Branch2没有commit
    git log Branch1 ^Branch2

    4.关于分支管理的一些常用命令:

    快速切换分支
    git checkout -
    创建并切换到该分支
    git checkout -b <branch-name>
    查看本地分支:
    git branch
    查看所有分支
    git branch -a
    重命名本地分支:
    git branch -m <branch-oldName> <branch-newName>
    删除远程分支
    git push origin --delete <remote-branchname>
    git push origin :<remote-branchname>
    关联远程分支(关联之后,git branch -vv就可以展示关联的远程分支名了,同时推送到远程仓库直接:git push,不需要指定远程仓库了。)
    git branch -u origin/mybranch
    展示任意分支某一文件的内容
    git show <branch-name>:<file-name>
    新建并切换到新分支上,同时这个分支没有任何commit
    git checkout --orphan <branch-name>

    5.关于git中标签的一些常用命令:
    tag就像是一个里程碑一个标志一个点,branch是一个新的征程一条线;
    tag是静态的,branch要向前走;
    稳定版本备份用tag,新功能多人开发用branch。

    查看标签
    git tag
    本地创建标签
    git tag <version-number>
    默认tag是打在最近的一次commit上,如果需要指定commit打tag:
    git tag -a <version-number> -m "v1.0 发布(描述)" <commit-id>
    推送标签到远程仓库(首先要保证本地创建好了标签才可以推送标签到远程仓库)
    git push origin <local-version-number>
    删除本地标签
    git tag -d <tag-name>
    删除远程标签(删除远程标签需要先删除本地标签,再执行下面的命令)
    git push origin :refs/tags/<tag-name>

    6.关于git中stash的一些常用命令:

    存储当前的修改,但不用提交commit
    git stash
    保存当前状态,包括untracked的文件
    git stash -u
    展示所有stashes
    git stash list
    回到某个stash的状态
    git stash apply <stash@{n}>
    回到最后一个stash的状态,并删除这个stash
    git stash pop
    删除所有的stash
    git stash clear
    从stash中拿出某个文件的修改
    git checkout <stash@{n}> -- <file-path>
    每天进步一步步,坚持坚持坚持
  • 相关阅读:
    【转载】mysql 日志开启
    无法向会话状态服务器发出会话状态请求。请确保 ASP.NET State Service (ASP.NET 状态服务)已启动,并且客户端端口与服务器端口相同。
    MVC4 本地IIS测试
    新浪网易IP地区信息查询API接口调用方法(转载)
    解决方案看起来是受源代码管理,但无法找到它的绑定信息。保存解决方案的源代码管理设置的 MSSCCPRJ.SCC 文件或其他项可能已被删除。由于无法自动恢复这些缺少的信息,缺少绑定的项目将被视为不受源代码管理。
    SQL语句中order_by_、group_by_、having的用法区别
    项目总结之关于JQuery一些常用的函数
    Log4Net使用指南之用log4net记录日志到数据库(含有自定义属性)------附Demo例子源代码
    HighCharts点击柱形或饼块等加URL或Click事件
    .Net用字符串拼接实现表格数据相同时合并单元格
  • 原文地址:https://www.cnblogs.com/zhizhao/p/7808540.html
Copyright © 2011-2022 走看看