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

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

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

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • 百度刷排名,刷流量,刷下拉软件【完全免费】胖虎图图-互动点击系统

    百度刷排名,刷流量,刷下拉软件【完全免费】胖虎图图-互动点击系统软件绿色免安装,打开即可使用。软件大小:1.4MB支持平台:win2000/win2003/winxp/win7/win8下载地址:http://www.phtoto.com/download/胖虎图图-互动点击.rar【2013-8-12】更新日志:修复无法停止任务的bug; 【2013-8-11】更新日志:新增支持谷歌搜索;新增支持360搜索;新增支持搜

  • CefSharp之二–如何看懂demo中的例子,以及按照例子进行开发「建议收藏」

    CefSharp之二–如何看懂demo中的例子,以及按照例子进行开发「建议收藏」CefSharp是做什么用的?请看前一篇文章:怎么用c#编写浏览器或者执行javascript代码?之后就是如何开发了。这个CefSharp最坑的是,还早不到文档,只能看着官方给的例子开发。项目地址那么就可以看到,带有example的都是例子。我给大家举2个例子。1.事件添加:我想让我的程序出了网页上的js代码,再额外的执行我自己写的js,怎么办呢?InitializeCom

  • python保留小数位数_python小数点保留三位

    python保留小数位数_python小数点保留三位https://www.luogu.org/problemnew/show/P14221.round()内置方法a=int(input())sum=0if(a>=401):sum+=(a-400)*0.5663a=400if(a>=151):sum+=(a-150)*0.4663a=150sum+=a*0.4…

  • UAT 环境_系统uac

    UAT 环境_系统uacUserAcceptEnvironment用户仿真测试环境转载于:https://www.cnblogs.com/qinqiu/p/5981222.html

  • java ee是什么_java ee与java的区别是什么

    java ee是什么_java ee与java的区别是什么JavaEE是指javaenterpriseedition,java企业版,多用于企业级开发,包括web开发等等很多组件。Java和JavaEE区别:1.Java是一种可以撰写跨平台应用软件的面向对象的程序设计语言。Java技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于PC、数据中心、游戏控制台、科学超级计算机、移动电话和互联网,同时拥有全球最大的开发者专业社群。正式成立于1…

  • 运维面试题(1024水篇)

    运维面试题(1024水篇)NETWORK1请描述TCP/IP协议中主机与主机之间通信的三要素参考答案IP地址(IPaddress)子网掩码(subnetmask)IP路由(IProuter)2请描述IP地址的分类及每一类的范围参考答案A类1-26B类128-191C类192-223D类224-239组播(多播)E类240-254科研3请描述A、B、C三类IP地址的默认子网掩码参考答案A类255.0.0.0B类255.255.0.0C类255.255.255.04请描述预留给企业的私有

发表回复

您的电子邮箱地址不会被公开。

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