大家好,又见面了,我是你们的朋友全栈君。
最近使用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 .
将
git add -u [
将
git add -A [
查看
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账号...