热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

gitdiff比较文件_Git的诞生以及常用命令

本文首发于个人微信公众号《andyqian》,期待你的关注!Git的诞生在企业开发中,源代码使用版本控制工具已经是常态了。如果你还没用过版本控制工具&#
df3c1e719c2b576d457f6db10cb7c114.png

本文首发于个人微信公众号《andyqian》,期待你的关注!

Git的诞生

在企业开发中,源代码使用版本控制工具已经是常态了。如果你还没用过版本控制工具,那就很不应该了。要说版本控制工具,现在比较流行的是SVN和Git。今天这里要介绍的是Git,Git 的诞生也是非常有趣的,Linux系统大家都知道吧,其创始人Linus在开发它时,因为Linux系统是开源的,一开始参与的人少,都是Linus自己通过diff的方式手动合并代码的。即使原始低效,Linus也不愿意引用中心化的版本控制工具SVN或CVS。直到社区影响力越来越大,代码提交量也日渐增长,社区的小伙伴强烈发声引入版本控制工具,不向SVN和CVS等工具低头的Linus。最终引用了一款商用的版本控制工具:BitKeeper。BitKeeper的东家BitMover公司也出于人道主义精神,授权Linux免费使用。但好景不长,Linux社区的兄弟们不安于现状,想破解其玩玩。不料被BitMover公司发现,一怒之下就收回了BitKeeper对Linux的免费使用权。不收回不要紧,一收回不得了。Linus怎么能忍呢?一气之下花个几天时间自己开发一个版本控制工具,也就是我们现在使用的Git。(牛人就是牛!)

Git 常用命令

下面介绍一些Git常用的版本控制命令,在日常工作中也是经常用到的。Git命令非常多,我们不一定全部记得的住,但这个帮助命令 git help 是一定要记住的。

初始化配置

  1. 设置用户名,邮箱 (会体现在邮件记录中)
    $ git config --global user.name "user_name"
    $ git config --global user.email "user_email"
  2. set proxy (可选)
    git config --global http.proxy
    git config --global --unset http.proxy (unset proxy)
    git config --global http.proxy 192.168.1.1:8083 (set proxy)
  3. 初始化仓库
    git init
  4. 查看文件状态
    git status

提交

  1. 添加文件至暂存区 ( . 表示当前目录所有文件 也支持单个文件)
    git add .
  2. 将指定文件从暂存区撤销
    git reset HEAD file
  3. 将指定文件丢弃工作区的改动
    git checkout -- file
  4. 将在暂存区的文件提交到本地仓库
    git commit -m "comment"
  5. 拉取远程文件
    git pull origin
  6. 将本地提交push远程
    git push origin

帮助

  1. 查看常用命令
    git help
  2. 查看某个命令的使用帮助
    git help add
  3. 查看git 使用指南(这个命令中会详细展示Git的使用周期)
    git help tutorial

分支管理

1、查看所有远程分支

git branch -r

  1. 查看所有分支
    git branch -a
  2. 切换分支
    git checkout local_branch_name
  3. 从远程分支上创建本地分支并切换至该分支
    git checkout -b local_branch_name origin/remote_balance_name
  4. 删除本地分支
    git branch -D local_branch_name
  5. 删除远程分支
    git push origin --delete remote_branch_name
  6. 重命名本地分支名称
    git branch -m old_branch_name new_branch_name

查看提交

  1. 查看日志
    git log
  2. 查看日志(显示格式化)
    git log --pretty=oneline

合并代码

  1. 合并指定分支代码
    git merge --no--ff branch_name

Git命令还有很多,其中命令相同参数不同也会有不同的表现。我们可以通过帮助来查看其详细用法。


相关阅读:

《浅谈 Java JPDA》

《Git 版本管理之团队实践》

《说说MySQL权限》

《Git 常用命令以及常见错误》



推荐阅读
  • 作为一名在大型手机游戏公司工作的程序员,尽管主要负责游戏逻辑和内容的开发,但对iOS底层开发接触较少。现在有了iPhone和可以虚拟MAC环境的电脑,希望能找到有效的iOS开发学习路径。 ... [详细]
  • 全面解析运维监控:白盒与黑盒监控及四大黄金指标
    本文深入探讨了白盒和黑盒监控的概念,以及它们在系统监控中的应用。通过详细分析基础监控和业务监控的不同采集方法,结合四个黄金指标的解读,帮助读者更好地理解和实施有效的监控策略。 ... [详细]
  • VSCode与Gitee集成:项目提交的高效实践
    本文介绍如何利用VSCode内置的Git工具将项目提交到Gitee,简化Git命令的使用,提升代码管理效率。同时分享一些常见的踩坑经验和解决方案。 ... [详细]
  • 最佳PHP源码加密工具推荐
    本文探讨了几款高效的PHP源码加密工具,旨在帮助开发者保护其代码免受未授权访问。文章不仅介绍了商业软件的选择,还提供了一些免费且实用的加密工具及其使用方法。 ... [详细]
  • 持续集成概述与实践指南
    本文探讨了持续集成(CI)的基本概念、目的及其在现代软件开发中的应用。通过实例分析,帮助读者理解如何有效实施持续集成,提高软件开发效率。 ... [详细]
  • Linux环境下配置Subclipse访问SVN+SSH仓库的方法
    本文详细介绍如何在Linux操作系统中配置Subclipse,以便通过SSH协议安全访问SVN仓库。不同于常见的Windows配置指南,本文提供了针对Linux用户的详细步骤。 ... [详细]
  • 本文详细介绍了 SVN 中的 switch 命令及其使用方法,包括如何切换工作副本到新的 URL 和如何处理版本库迁移等情况。 ... [详细]
  • 本文详细介绍了中央电视台电影频道的节目预告,并通过专业工具分析了其加载方式,确保用户能够获取最准确的电视节目信息。 ... [详细]
  • 本文详细介绍了8051系列微控制器的中断系统,特别是C51编译器中interrupt和using关键字的作用及其使用方法。通过深入分析这两个关键字的功能,帮助开发者更好地理解和优化中断程序的设计。 ... [详细]
  • 微信小程序:授权登录与手机号绑定
    本文详细介绍了微信小程序中用户授权登录及绑定手机号的流程,结合官方指引和实际开发经验,提供了一套完整的实现方案,帮助开发者更好地理解和应用。 ... [详细]
  • TortoiseSVN与VisualSVN Server的安装及基本操作指南
    本文详细介绍了如何安装VisualSVN Server以及TortoiseSVN客户端,并提供了基本的操作步骤,包括配置仓库、用户管理及权限设置等关键环节。 ... [详细]
  • 前端开发中的代码注释实践与规范
    本文探讨了前端开发过程中代码注释的重要性,不仅有助于个人清晰地回顾自己的编程思路,还能促进团队成员之间的有效沟通。文章将详细介绍HTML、CSS及JavaScript中的注释使用方法,并提出一套实用的注释规范。 ... [详细]
  • 使用Bootstrap创建响应式渐变固定头部导航栏的方法
    本文详细介绍了如何利用Bootstrap框架构建一个具有渐变效果的固定顶部响应式导航栏,包括HTML结构、CSS样式以及JavaScript交互的完整实现过程。适合前端开发者和学习者参考。 ... [详细]
  • 本文详细介绍了如何从SVN中获取项目,并在本地环境中进行有效的构建和开发,包括具体的步骤和配置方法。 ... [详细]
  • 解决 SVNManager 中文路径乱码问题的方法
    在安装 MySQL 后,通过调整 my.cnf 文件中的字符集设置,可以有效解决 SVNManager 在处理中文路径时出现的乱码问题。 ... [详细]
author-avatar
jiangzh
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有