git常用命令

一、Git版本控制

SVN:集中式版本控制

Git:分布式版本控制

git官网:https://git-scm.com

git淘宝镜像地址:http://npm.taobao.org/mirrors/git-for-windows

工作流程:工作区 ---> 暂存区 ---> 本地仓库 ---> 远程仓库

二、Git环境配置

1 #查看[全局]配置:
2 git config [--global] --list
1 #设置提交代码时的用户名和邮箱:
2 git config [--global] user.name "[name]"
3 git config [--global] user.email "[email address]"
1 #重置用户名和密码
2 git config --replace-all user.name "[name]"
3 git config --replace-all user.email "[email address]"

三、Git常用命令

1、初始化

1 #在当前目录新建一个Git代码库
2 git init
3 
4 #下载一个项目和它的整个代码史
5 git clone [url]

2、增加/删除文件

#添加指定文件到暂存区
git add [file1] [file2] ...

#添加指定目录到暂存区,包括子目录
git add [dir]

#添加当前目录的所有文件到暂存区
git add .
---------------------------------------------
#删除工作区文件,并将这次删除放入暂存区
git rm [file1] [file2] ...

3、代码提交

1 #提交暂存区到仓库区
2 git commit -m "[message]"
3 
4 #提交暂存区的指定文件到仓库区
5 git commit [file1] [file2] ... -m "[message]"

4、分支

 1 #查看本地所有分支
 2 git branch
 3 
 4 #查看远程所有分支
 5 git branch -r
 6 
 7 #查看所有分支(本地分支和远程分支)
 8 git branch -a
 9 
10 #查看每一个分支的最后一次提交
11 git branch -v
12 
13 #新建一个分支(但仍然留在当前分支)
14 git branch [branch-name]
15 
16 #切换到指定分支
17 git checkout [branch-name]
18 
19 #新建一个分支并切换到该分支(组合用法)
20 git checkout -b [branch-name]
21 
22 #拉取远程分支并在本地创建分支(注:远程分支前加origin)
23 git checkout -b [local_branch] origin/[remote_branch]
24 
25 #建立本地仓库(dev)和远程仓库(dev)的链接,这样代码才能提交上去
26 git branch --set-upstream-to=origin/dev
27 #取消对master的跟踪
28 git branch --unset-upstream master
29 
30 #合并指定分支(branch-name)到当前分支(一般在master上操作)
31 git merge [branch-name]
32 
33 #删除本地分支
34 git branch -d [branch-name]
35 
36 #删除远程分支(写法一),危险操作
37 git branch -r -d [远程仓库别名/远程分支名]
38 #删除远程分支(写法二)
39 git push origin --delete [branch-name]
40 #删除远程分支(写法二简写)
41 git push origin :[remote_branch]
42 
43 #重命名分支:如果newbranch名字已经存在,则需要使用-M强制重命名,否则,使用-m进行重命名
44 git branch -m|-M [oldbranch-name] [newbranch-name]

5、查看信息

 1 #查看所有文件状态
 2 git status
 3 
 4 #查看指定文件状态
 5 git status [filename]

6、远程同步

 1 #下载远程仓库的所有变动
 2 git fetch <远程仓库别名>
 3 
 4 #显示所有远程仓库
 5 git remote -v
 6 
 7 #本地仓库添加一个新的远程仓库,并命名
 8 git remote add [远程仓库别名:默认origin] [远程仓库地址url]
 9 
10 #下载一个项目和它的整个代码史(不用初始化仓库)
11 git clone [url]
12 
13 #拉取远程仓库的变化,并与本地分支合并(建立链接)
14 git pull <远程仓库别名> [远程分支名]:[本地分支名]
15 #简写:(远程分支名和本地分支名相同)
16 git pull <远程仓库别名> [分支名]
17 
18 #推送到远程仓库(branch-name:本地分支名)
19 git push -u <远程仓库别名> [branch-name]
20 #远程已有分支,但未关联本地分支(本地已切换到同名分支)
21 git push -u origin/remote_branch
22 
23 #创建远程分支&推送本地分支到远程分支
24 #1、会创建远程分支
25 #2、远程分支与本地分支名字相同
26 git push <远程仓库别名> [远程分支名]
27 
28 #强行推送当前分支到远程仓库,即使有冲突
29 git push <远程仓库别名> --force
30 
31 #推送所有分支到远程仓库
32 git push <远程仓库别名> --all

四、Git实战

一、暂存区提交与撤销

1、比较工作区和仓库的不同

修改文件后直接commit(只在工作区修改,没有commit到git仓库)

1 执行
2 git diff HEAD -- [文件名]
3 比较工作区和仓库的不同

1 差异比较说明:
2 '---':表示变动前的文件
3 '+++':表示变动后的文件
4 变动的位置用两个@符号作为开始和结束
5 '-0,0':减号表示第一个文件,第一个0表示第0行,第二个0表示连续0行;
6 '+1,2':加号表示第二个文件,第一个1表示第1行,第二个2表示连续2行;

2、暂存区删除文件

git reset HEAD [文件名]

二、版本回退

1、查看日志

git log

2、回到上一个版本

1 git reset --hard HEAD^

3、回到上两个版本

1 git reset --hard HEAD^^

4、回到指定版本

1 git reset --hard HEAD~3
2 #回到3个版本前

5、查看所有版本信息

git reflog

6、回到指定版本

1 git reset --hard [唯一id]

7、查看简洁版本信息

git log --pretty=oneline

三、版本删除

1、取消删除

工作区删除文件,取消删除(git仓库没有删除)

1 git restore [工作区删除的文件名]

2、从版本库拉回

1 git checkout [工作区删除的文件名]

3、从版本库删除

1 git rm [版本库中要删除的文件名]

四、远程仓库

1、查看本地仓库提交的内容

1 git ls-files

2、添加远程仓库

1 git remote add [远程仓库别名:默认origin] [远程仓库地址url]
2 #eg:git remote add origin https://github.com/...

3、推送到远程仓库

1 git push -u origin master

4、使用SSH地址

  • 生成密钥

    ssh-keygen -t rsa -C "github/gitee账户邮箱"
  • 密钥地址:

    1 /c/Usres/Administrator/.ssh/id_rsa
  • 在github或者gitee设置中找到SSH设置 ---> 新建SSH,添加公钥(不要加密钥)

  • 其他同https

五、本地分支操作

1、查看所有分支

1 git branch

2、新建分支并切换

1 git checkout -b [new_branch-name]

3、删除指定分支

1 git branch -d [branch-name]

4、切换指定分支

git checkout [branch-name]

5、合并分支

合并指定分支到当前分支(当前分支为master,此操作在master分支上进行),禁止合并主分支到其他分支

1 git merge [branch]

6、重命名分支

如果newbranch名字已经存在,则需要使用-M强制重命名,否则,使用-m进行重命名

1 git branch -m|-M [oldbranch] [newbranch]

六、远程分支操作

1、查看远程所有分支

1 git branch -r

2、查看本地和远程所有分支

1 git branch -a

3、创建远程分支&推送本地分支到远程分支

1 git push origin [branch-name]
2 #1、会创建远程分支
3 #2、远程分支与本地分支名字相同

4、删除远程分支(本地分支还保留)

危险操作

注:注意冒号

1 git push origin :[remote_branch]

5、拉取远程分支并在本地创建分支

注:远程分支前加origin

1 git checkout -b [local_branch] origin/[remote_branch]

七、本地分支冲突解决

1、本地分支修改文件

2、切换分支

1 git checkout master

3、本地master分支修改文件

4、主分支进行合并

1 git merge dev1

5、冲突解决方法

根据业务进行手动解决

解决冲突后重新add,commit

6、查看分支合并图

1 git log --graph --pretty=oneline

八、多人冲突解决

1、先拉取

1 git pull

2、解决冲突

3、重新add,commit,push

posted @ 2021-04-18 18:22  大米饭盖饭  阅读(317)  评论(0编辑  收藏  举报