git日常使用的常用命令总结

git 是什么?

Git是目前世界上最先进的分布式版本控制系统(没有之一)。

Git(读音为/gɪt/。)是一个开源的分布式版本控制系统,可以有效、高速的处理从很小到非常大的项目版本管理。

通过版本控制系统,我们可以轻而易举的控制代码或者文档的版本。对于写代码来说,它最大的用处就是记录之前的历史版本。而且在与其他人协助开发的时候,可以轻而易举的看到总文件的改动。因此,熟练地使用这个工具是十分重要的。


在开始使用之前需要下载和安装git,可以遵循以下网址来进行操作: 安装教程

git 常用命令

1. 建立git版本库

git init

通过此命令可以把当前目录变成可以用git管理的仓库。

2.把文件添加到版本库

首先先在此目录下放入要这个入版本库的文件, 比如我要加入addfile文件, 就要输入下面两行命令。

git add addfile
git commit -m<message>

先把文件加入到版本库。然后再更新版本。

git add命令实际上就是把要提交的所有修改放到暂存区(Stage),然后,执行git commit就可以一次性把暂存区的所有修改提交到分支。

3. 其他常用命令

操作 命令 解释
查看状态 git status 可以看到仓库中文件的更新情况。
查看不同 git status file.txt 此查看文件改变了哪些地方
查看提交日志 git log 可以看到提交的历史记录
版本回退 git reset HEAD指向的版本就是当前版本
git reset HEAD^ 回退到上一个版本
git reset HEAD^^ 回去上两个版本
git reset HEAD~100 回退上100个版本
查看命令历史 git reflog 可以查看运行的命令的历史
丢弃工作区的修改 git checkout -- file 让这个文件回到最近一次git commit或git add时的状态。
丢弃缓冲区修改 git reset HEAD 把暂存区的修改撤销掉(unstage),重新放回工作区

4. 远程仓库

  • 添加远程库

    首先在github上创建一个远程仓库

    然后运行代码将本地仓库和远程仓库相关联
git remote add origin git@github.com:<用户名>/addfile.git
  • 本地内容推送到远程
git push origin master

把本地master分支的最新修改推送至GitHub

  • 克隆仓库
git clone <网址>

通过克隆,把github上的仓库下载到本地,实现远程仓库

5.分支管理

在版本回退里,每次提交,Git都把它们串成一条时间线,这条时间线就是一个分支。截止到目前,只有一条时间线,在Git里,这个分支叫主分支,即master分支。HEAD严格来说不是指向提交,而是指向master,master才是指向提交的,所以,HEAD指向的就是当前分支。

命令汇总:

命令 解释
git branch 建立分支
git checkout new_branch 切换分支
git checkout -b 建立,切换二和一
git branch 列出分支
git merge new_branch 合并分支
git branch -d new_branch 删除分支

6.多人协作

命令 解释
git remote -v 查看远程库信息
git push origin branch-name 从本地推送分支
git checkout -b branch-name origin/branch-name 在本地创建和远程分支对应的分支
git branch --set-upstream branch-name origin/branch-name 建立本地分支和远程分支的关联
git pull 从远程抓取分支

7.合并历史

rebase操作可以把本地未push的分叉提交历史整理成直线

8.标签管理

发布一个版本时,我们通常先在版本库中打一个标签, 比如V1.0 之类的,对于开发非常方便

命令 解释
git tag 新建一个标签,默认为HEAD
git tag -a -m "infomation" 指定标签信息
git tag 查看所有标签
git push origin 推送一个本地标签
git push origin --tags 推送全部未推送过的本地标签
git tag -d 删除一个本地标签
git push origin :refs/tags/ 删除一个远程标签

还有其他的不是非常常用的命令可以看:

https://blog.csdn.net/halaoda/article/details/78661334 来查阅

参考博客

https://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000

git日常使用的常用命令总结的更多相关文章

  1. 图解git中的最常用命令

    图解git中的最常用命令 Git命令参考手册(文本版) git init                                                  # 初始化本地git仓库(创 ...

  2. 版本控制-Git服务器搭建和常用命令使用

    Git是目前世界上最先进的分布式版本控制系统(没有之一).使用Svn的请参考<版本控制-svn服务器搭建和常用命令(centos 6.3)>,下面介绍Git的常用命令 常用命令 简单版 升 ...

  3. Git 基本概念及常用命令

    一.基本概念 文件的三种状态:(任何一个文件在git中都有以下三种状态) 1) 已提交(committed):表示该文件已经被安全地保存在本地数据库中了. 2) 已修改(modified):表示修改了 ...

  4. git开发流程、常用命令及工具、TortoiseGit使用及常见问题

    根据我最近使用git的一些经历,git是基于分支的版本控制工具,分支有远程分支和本地分支. 一.开发流程 - 从远程服务器的master,clone一份项目文件到本地,然后本地master的基础上br ...

  5. Git基础知识与常用命令

    一:相关概念: 1:工作区(Working Directory): 就是你在电脑里能看到的目录 2:版本库(Repository): 工作区有一个隐藏目录.git,这个不算工作区,而是Git的版本库. ...

  6. Git的配置及常用命令

    Git配置 git config --global user.name "<username>" git config --global user.email &quo ...

  7. Git 使用的配置 常用命令

    老文一篇 搬过来 1. git的部分配置 # 全局提交用户名与邮箱 git config --global user.name "simon" git config --globa ...

  8. Git配置和一些常用命令

    Git:常用命令.... git clone <repo> git config –list git diff –staged add后,commit前的撤销:git rm –cached ...

  9. Git的基本原理与常用命令[二]

    标签(linux): git 笔者Q:972581034 交流群:605799367.有任何疑问可与笔者或加群交流 git 的四个区域 四种状态 常用命令 git add #加入暂存(索引区) git ...

随机推荐

  1. Mnist手写数字识别 Tensorflow

    Mnist手写数字识别 Tensorflow 任务目标 了解mnist数据集 搭建和测试模型 编辑环境 操作系统:Win10 python版本:3.6 集成开发环境:pycharm tensorflo ...

  2. 数据湖应用解析:Spark on Elasticsearch一致性问题

    摘要:脏数据对数据计算的正确性带来了很严重的影响.因此,我们需要探索一种方法,能够实现Spark写入Elasticsearch数据的可靠性与正确性. 概述 Spark与Elasticsearch(es ...

  3. Dcoker docker: Error starting userland proxy: Bind for 0.0.0.0:80: unexpected error (Failure EADDRINUSE).

    https://stackoverflow.com/questions/46533482/error-starting-userland-proxy-bind-for-0-0-0-080-unexpe ...

  4. SQL Server数据类型对应.Net Core中的数据类型

    SQL C# bigint(sql大小:8byte) long(64位) int, integer(sql大小:4byte) int(32位) smallint(sql大小:2byte) short( ...

  5. jenkins集群(一) -- 在Linux上部署

    一.安装好jdk.maven.git 1.安装jdk并配置好全局变量 2.安装maven:yum install maven 3.安装jdk:yum install git 二 .安装jenkins ...

  6. Java容器学习之ArrayList

    一.概述 ArrayList是java中十分常用的集合类,继承于AbstractList,并实现了List.RandomAccess.Cloneable和Serializable接口.ArrayLis ...

  7. 企业权限管理(SSM整合)(总结)

    学于黑马程序员和传智播客联合做的教学项目 感谢 黑马程序员官网 传智播客官网 个人根据教程的每天的工作进度的代码和资料 密码:cti5 b站在线视频 微信搜索"艺术行者",关注并回 ...

  8. maven install报The forked VM terminated without saying properly goodbye. VM crash or System.exit called

    idea新导入的工程maven install打包报错误:The forked VM terminated without saying properly goodbye. VM crash or S ...

  9. 线程_使用multiprocessing启动一个子进程及创建Process 的子类

    from multiprocessing import Process import os # 子进程执行的函数 def run_proc(name): print("子进程运行中,名称:% ...

  10. PHP vsprintf() 函数

    实例 把格式化字符串写入变量中: <?php高佣联盟 www.cgewang.com$number = 9;$str = "Beijing";$txt = vsprintf( ...