20个 Git 命令玩转版本控制

git,命令,玩转,版本控制 · 浏览次数 : 100

小编点评

**Git 命令指南** **1. git config** ``` git config --global user.name "Firstname Lastname" git config --global user.email "your.email@example.org" ``` **2. git init** ``` git init <the name of your repository> ``` **3. git clone** ``` git clone <the url of the repository> ``` **4. git add** ``` git add myfile ``` **5. git branch** ``` git branch -a -v ``` **6. git commit** ``` git commit -m "first commit" ``` **7. git push** ``` git push origin master ``` **8. git diff** ``` git diff ``` **9. git status** ``` git status ``` **10. git show** ``` git show ``` **11. git tag** ``` git tag –a v2.0 –m ‘this is version 2.0 tag’ ``` **12. git merge** ``` git merge branch_name ``` **13. git log** ``` git log ``` **14. git reset** ``` git reset [commit id] ``` **15. git rm** ``` git rm <filename> ``` **16. git remote** ``` git remote add [variable name] [Remote Server Link] ``` **17. git fsck** ``` git fsck ``` **18. git pull** ``` git pull repository_link ``` **19. git checkout** ``` git checkout <branch-name> ``` **20. git stash** ``` git stash ``` **21. git remote set-url** ``` git remote set-url origin ```

正文

想要在团队中处理代码时有效协作并跟踪更改,版本控制发挥着至关重要的作用。Git 是一个版本控制系统,可以帮助开发人员跟踪修订、识别文件版本,并在必要的时候恢复旧版本。Git 对于有一定编程经验的用户来说虽然不算太难,但是想要玩转一些高级功能也并不是件容易的事情。在这篇文章中,我将向你展示一些最实用的 Git 命令,手把手教你成为 Git 专家。
 

1. git config

git config 是你需要熟知的基本 Git 命令之一。该命令有助于设置电子邮件、用户名、文件格式、首选文件算法和许多其他属性的配置值。命令示例如下:

# configure the user which will be used by Git
# this should be not an acronym but your full name
$ git config --global user.name "Firstname Lastname"
# configure the email address
$ git config --global user.email "your.email@example.org"

 

2. git init

git init 是最常用的 Git 命令之一,用于适合初始化 Git 仓库(创建新仓库)。.git 文件夹通常保持隐藏状态,如果是 Windows,需要在查看中选择“隐藏的项目”。对于 Linux,可以使用“ls –a”命令查看.git 目录。建议任何人都不要篡改 .git 文件夹的内容。

$ git init <the name of your repository>

 

3. git clone

此命令用于从现有 URL 获取存储库。

$ git clone <the url of the repository>

 

4. git add

git add 命令可以帮助用户将当前在工作目录中的文件修改添加到用户 index 中,帮助用户添加准备提交到远程存储库的未跟踪文件。

$ git add myfile

此命令会将 myfile 添加到暂存区。
 

5. git branch

git branch 是 git 初学者需要熟练掌握的重要命令。该命令可帮助用户创建、删除和列出分支。这个命令有一些重要选项:
-v -a 显示有关所有分支的更多信息。默认情况下,列出的分支只会显示本地分支名称。

  • -a:查看所有分支,包括本地及远程分支
  • -v:查看本地分支及其对应的提交记录

-- no-merged 返回所有尚未合并到当前 HEAD branch的分支。
-d 删除指定的分支。

# list all branches
$ git branch -a -v
# Return all branches that has not merged
$ git branch --no-merged
# Return all branches thaat has merged
$ git branch --merged

 

6. git commit

git commit 命令捕获项目当前暂存更改的快照。

$ git commit -m “first commit”

 

7. git push

git push 命令可以帮助用户将所有修改过的本地 Git 仓库中的本地分支推送到远程仓库。

$ git push origin master

 

8. git diff

git diff 命令可用于创建补丁文件或统计索引、工作目录或 git 存储库中路径或文件之间的差异。

$ git diff

 

9. git status

git status 命令可以帮助显示索引中文件和工作目录中文件的状态。该命令将轻松列出未跟踪、修改和暂存的文件。

$ git status

 

10. git show

此命令显示指定提交的元数据和内容更改。

$ git show

 

11. git tag

此命令将有助于使用简单、持久且人类可读的句柄标记特定提交。该命令的示例如下

git tag –a v2.0 –m ‘this is version 2.0 tag’

 

12. git merge

git merge 是一项强大的功能,用于将两个或两个以上的开发历史合并在一起。当开发人员处理相同的代码并希望在将它们推送到分支之前集成更改时则需要使用命令。

$ git merge branch_name

 

13. git log

git log 命令列出了项目中曾发生的每一次提交,方便用户查看随着时间的推移发生了哪些变化,以及有关提交如何完成的其他一些信息。

$ git log

 

14. git reset

使用 git reset 命令来回退版本,改命令可以退回某一次提交的版本,注意谨慎使用 --hard 参数,该参数会删除回退点之前的全部信息。

$ git reset [commit id]

 

15. git rm

此命令用于删除 index 中的文件。要从当前工作目录中删除特定文件并分阶段删除,请使用以下命令:

$ git rm <filename>

 

16. git remote

此命令用于将本地 git 存储库连接到远程服务器。

$ git remote add [variable name] [Remote Server Link]

 

17. git fsck

此命令用于检查 Git 文件系统的问题,常用来检查内部数据库的完整性和不一致性问题。

$ git fsck

 

18. git pull

此命令用于从远程服务器上获取代码,并合并本地的版本。

$ git pull repository_link

 

19. git checkout

git checkout 命令允许我们切换到现有分支或创建并切换到新分支。此外,在 git checkout 命令后可以使用-b参数,系统将自动创建一个新的分支并立即切换到这个分支上来。

Switch to an existing branch:$ git checkout <branch-name>
#Create and switch to a new branch
$ git checkout -b <branch-name>

 

20. git stash

该命令用于将所有修改过的文件暂时存放在工作目录中。
暂时保存所有修改过的跟踪文件:

$ git stash

列出所有的暂存文件:

$ git stash list

删除最新的存储:

$ git stash drop

 

Republish of this article is authorized by Thomas Sentre
Link:https://dev.to/devland/20-git-commands-that-will-make-you-a-version-control-pro-149p

与20个 Git 命令玩转版本控制相似的内容:

20个 Git 命令玩转版本控制

想要在团队中处理代码时有效协作并跟踪更改,版本控制发挥着至关重要的作用。Git 是一个版本控制系统,可以帮助开发人员跟踪修订、识别文件版本,并在必要的时候恢复旧版本。Git 对于有一定编程经验的用户来说虽然不算太难,但是想要玩转一些高级功能也并不是件容易的事情。在这篇文章中,我将向你展示一些最实用的

20个最佳实践提升Terraform工作流程|Part 1

将 Terraform 管理laC的技能提升到一个新的水平。

20个最佳实践提升Terraform工作流程|Part 2

将 Terraform 管理 IaC 的技能提升到一个新的水平。

20个Golang片段让我不再健忘

本文使用代码片段的形式来解释在 go 语言开发中经常遇到的小功能点,由于本人主要使用 java 开发,因此会与其作比较,希望对大家有所帮助。

[转帖]20个常用的Linux工具命令

https://www.cnblogs.com/codelogs/p/16060113.html 简介# 网上有很多辅助开发的小工具,如base64,md5之类的,但这些小工具其实基本都可以用Linux命令实现,即方便又高效。 查看特殊字符# 把这个放在首位,是因为这个实在太重要了,程序经常会因为特

[转帖]020 Linux 20 个宝藏命令案例

https://my.oschina.net/u/3113381/blog/5478108 1 JDK 相关的查找命令 (1)确认是否安装 JDK //命令 java -version //输出示例 openjdk version "1.8.0_212" OpenJDK Runtime Enviro

[转贴]Python 中 -m 的典型用法、原理解析与发展演变

在命令行中使用 Python 时,它可以接收大约 20 个选项(option),语法格式如下: python [-bBdEhiIOqsSuvVWx?] [-c command | -m module-name | script | - ] [args] 1 本文想要聊聊比较特殊的“-m”选项:关于它

申请并部署免费的 SSL/TLS 证书

对于囊中羞涩的我们来说,只要能白嫖,就绝不乱花钱。惯常申请免费 SSL/TLS 证书的途径有: 各大云服务平台限量提供。比如阿里云会给每个账号每年 20 个证书的申请额度。缺点是不支持泛域名,一年后须重新申请并部署; 一些网络服务商如Cloudflare会提供自动化的证书服务,只要在它们的官网作简单

acme.sh的简单学习过程

acme.sh的简单学习过程 背景 公司内部测试环境为了节约费用(不要学我) 自己花十块到一百块之前从腾讯云购买一个域名 然后使用NDSPOD进行解析内网IP地址 偶尔需要申请临时证书进行HTTPS的验证. 但是免费的证书最多20个. 然后想了下就想试试acme.sh进行免费证书的申请 注意: 本方

[转帖]超线程 Smt 究竟可以快多少?

https://www.51cto.com/article/686171.html 刚才我们关闭SMT是把CPU10-CPU19全关了,只留下每对里面的1个CPU,也就是留下了CPU0-CPU9。 默认情况下是Intel I9,10核,每个核2个threads,共20个CPUs: 下面编译内核: 需