git命令基本用法记录

git命令基本用法记录最近使用git命令提交代码的时候发现很多命令都忘记了,于是重新学习了一下git命令。顺便整理了一下,加强记忆,也方便以后随时查看。以下命令都是平常工作中使用频率较高的命令,也是git的一些基本用法,其中[]内的参数表示可以省略,<>内的参数只是示例,具体名称视自己的项目而定,实际命令中不带<>,表示远程主机名,等表示分支名。1.git配置    获取本机sshkey:ssh-keygen-t-C“yourEmail@exampl

大家好,又见面了,我是你们的朋友全栈君。

最近使用git命令提交代码的时候发现很多命令都忘记了,于是重新学习了一下git命令。顺便整理了一下,加强记忆,也方便以后随时查看。

以下命令都是平常工作中使用频率较高的命令,也是git的一些基本用法,其中[]内的参数表示可以省略,<>内的参数只是示例,具体名称视自己的项目而定,实际命令中不带<>,表示远程主机名,等表示分支名。

1.git配置
    获取本机ssh key:

ssh-keygen -t -C “yourEmail@example.com

配置全局name和email:

git config –global user.name “”
        git config –global user.email “yourEmail@example.com

2.clone项目到本地
    git clone http://yourGitAddress.git

3.查看工作区状态  git status

4.git add
    将某个文件或文件夹添加到暂存区:
        git add <file_name.txt>/

将当前目录所有修改添加到暂存区(不包括忽略文件):
        git add .

内的所有已跟踪文件的修改添加到暂存区(省略path表示当前目录):

        git add -u [ ]

内的所有已跟踪文件的修改和未跟踪文件添加到暂存区(省略path表示当前目录):

        git add -A [ ]

查看 中已修改但未提交的文件,并通过子命令进行控制(省略path表示当前目录):

        git add -i [ ]

5.git commit
    提交所有改动并编写日志:
        git commit -m “<改动日志说明>”

6.git pull
    下拉指定主机的指定分支,并与本地的指定分支合并:
        git pull <远程master>:<本地master>

下拉指定主机的指定分支,并与本地的当前分支合并:
        git pull

7.git push
    推送本地指定分支到指定远程主机的指定分支上:
        git push <本地master>:<远程master>

推送本地指定分支到远程同名分支上,如果远程没有同名分支,则会新建同名分支:
        git push <本地master>

推送空的分支到远程指定分支,相当于删除远程分支:
        git push :<远程master>

推送当前分支到指定主机的指定分支:
        git push HEAD:<远程master>

推送当前分支到指定主机的同名分支:
        git push HEAD

推送本地分支到远程同名分支上,并建立追踪关系(建立追踪关系后可直接使用git push推送):
        git push -u

推送本地所有分支到指定主机上:
        git push –all

8.git branch
    查看分支列表:
        git branch [–list]

查看本地和远程所有分支:
        git branch -a

新建分支:
        git branch

删除远程分支:
        git push –delete

删除分支(当前分支不能在被删除的分支上):
        git branch -D

9.git merge
    合并某个分支到当前分支下,并自动进行新的提交:
        git merge

合并某个分支到当前分支下,不进行新的提交:
        git merge –no-commit

合并master分支和next分支到当前分支顶部:
        git merge

10.git checkout
    切换到分支的head版本:
        git checkout

取出当前分支的tag_name版本:
        git checkout <tag_name>

放弃指定分支对file_name的修改:
        git checkout <file_name.txt>

在当前分支上创建新分支并将工作区设置为该分支上:
        git checkout -b

11.git reset
    回退文件,将文件从暂存区回退到工作区:
        git reset [HEAD] <file_name.txt>

向前回退多个版本:
        git reset HEAD~n

回退到指定某个版本:
        git reset <commit_id>

将版本库软回退n个版本,所谓软回退表示将本地版本库的头指针全部重置到指定版本,且将这次提交之后的所有变更都移动到暂存区:
        git reset –soft HEAD~n

将版本库回退n个版本,将本地版本库的头指针全部重置到指定版本,且会重置暂存区,即这次提交之后的所有变更都移动到未暂存阶段:
        git reset [–mixed] HEAD~n

将版本库回退n个版本,但是不仅仅是将本地版本库的头指针全部重置到指定版本,也会重置暂存区,并且会将工作区代码也回退到这个版本:
        git reset –hard HEAD~n

12.git rm
    删除git仓库管理系统以及本地中的某个文件:
        git rm <file_name.txt>

删除git仓库管理系统以及本地中的某个文件夹:
        git rm -r

删除git仓库管理系统中的文件,但是保留本地文件:
        git rm –cached <file_name.txt>

13.git mv
    移动某个文件到指定文件夹下:
        git mv

重命名某个文件:
        git mv <file_name> <new_file_name>

14.git rebase
    把当前分支衍合到指定分支上:
        git rebase

如果有冲突需要先解决冲突,解决完冲突之后执行:
        git rebase –continue

放弃本次衍合操作:
        git rebase –abort

直接使用master分支取代此分支
        git rebase –skip

资料都是自己在网上面收集整理,再加上了自己的一些理解,如果有错误,还望能提出,我好及时改正。如果还有什么问题也可以与我讨论,大家共同学习,一起进步。
————————————————
版权声明:本文为CSDN博主「kolechez」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/a_kevin/article/details/80994783

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/148075.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • java实现四种常用排序算法

    java实现四种常用排序算法四种常用排序算法冒泡排序特点:效率低,实现简单思想(从小到大排):每一趟将待排序序列中最大元素移到最后,剩下的为新的待排序序列,重复上述步骤直到排完所有元素。这只是冒泡排序的一种,当然也可以从后往前排。publicvoidbubbleSort(intarray[]){intt=0;for(inti=0;i&amp;amp;lt;…

    2022年7月25日
    7
  • 深入学习Arduino u8g2 OLED库,一篇就够

    深入学习Arduino u8g2 OLED库,一篇就够1.前言    最近博主听到QQ群里面问得比较多的问题:    “博哥,有玩过OLED吗?”    “博哥,有试过在ESP8266上调成功过SSD1306吗?”    “博哥,OLED上显示天气信息怎么弄?”    …    诸如此类的问题,在博主看来,无非都是对OLED库用法的不熟悉甚至不了解。ArduinoOLED库众多,博主也曾经介绍过一款《博哥OLED系列》-玩转SSD1…

    2022年4月18日
    57
  • datagrip 2021激活码-激活码分享

    (datagrip 2021激活码)好多小伙伴总是说激活码老是失效,太麻烦,关注/收藏全栈君太难教程,2021永久激活的方法等着你。IntelliJ2021最新激活注册码,破解教程可免费永久激活,亲测有效,下面是详细链接哦~https://javaforall.net/100143.htmlF6EG2ZUBVX-eyJsaWNlbnNlSWQi…

    2022年3月28日
    1.3K
  • gtest初识_tests strength

    gtest初识_tests strengthgtest初识总结本文以结合gtestgithub内容进行学习gtest。gtestgithub地址gtest编译g++xx.cppxx.h-lgtest-lpthread-omaingtest编写创建测试的一个简易的步骤:1.使用TEST()宏来定义和命名测试函数,这些是不返回值的普通C++函数。2.在此函数中,与要包含的任何有效C++语句一起使用各种g…

    2022年9月29日
    0
  • linux配置虚拟IP地址方法「建议收藏」

    linux配置虚拟IP地址方法「建议收藏」linux配置虚拟IP地址方法在日常linux管理工作中,需要为应用配置单独的IP地址,以达到主机与应用的分离,在应用切换与迁移过程中可以做到动态切换,特别是在使用HA的时候,这种方案可以保证主机与应用的隔离,对日常的运维有很大的益处.但在有些应用中还没有配置HA,后期需要配置HA时,我们可以先配置虚拟IP给在线的应用使用,这要后期的系统运维可以做到更好的可扩展性.本文主要是对IP地址

    2022年10月20日
    0
  • 学习 Web 开发技术的16个最佳教程网站和博客

    学习 Web 开发技术的16个最佳教程网站和博客互联网经过这么多年的发展,已经出现了众多的Web开发技术,像.Net/Java/PHP/Python/Ruby等等。对于Web开发人员来说,不管是初学者还是有一定经验的开发人员都需要时刻学

    2022年8月6日
    1

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号