git 命令操作总结

1. 安装git

$ sudo apt-get intall git

​ 终端输⼊git 如果有提示证明安装成功

2.git单⼈操作

2.1 创建空的git仓库:

$ git init

​ 提示: git仓库和项⽬的根路径在⼀起,⽤来管理项⽬

​ 2.2 配置git提交的⽤户名,邮箱

​ 例如:

$ git config user.name  'battlemonkey'
$ git config user.email '[email protected]'

​ 如果没有配置,默认使⽤的: ~/.gitconfig 根⽬录下的⽤户信息

2.3 查看⽂件状态: git status

​ 红⾊: 表示新建⽂件, 或者新修改了⽂件,⽬前位于⼯作区中
​ 绿⾊: 表示⽂件在暂存区

2.4将⼯作区代码, 添加到暂存区(⼯作区-->暂存区)

​ 例如:

$ git add .
$ git add xxx.py

​ “点” 表示添加跟踪 所有变动, xxx.py表示跟踪指定⽂件

​ 2.5将⼯作区代码,添加到仓库区(⼯作区—>仓库区)

​ 例如:

$ git commit -m '注释'

2.6将⼯作区,直接添加到仓库区(⼯作区-->暂存区—>仓库区)

​ 例如:

$ git commit -am '注释信息'

​ 2.7查看版本历史

​ 例如:

$ git log           # log查看详细信息
$ git reflog        # reflog查看简要信

2.8回退版本

# 例如:
$ git reset --hard HEAD

# 或者: 
$ git reset --hard 版本号
#        HEAD表示当前最新版本
#        HEAD^表示当前最新版本的, 上⼀个版本
#        HEAD^^表示当前最新版本的, 前两个版本, 依次类推
#        HEAD~1 表示当前最新版本的, 上⼀个版本
#        HEAD~2 表示当前最新版本的, 前两个版本, 依次类推

2.9撤销⼯作区,暂存区修改

  • 撤销⼯作区:
$ git checkout ⽂件名   # 即: 放弃当前对暂存区文件的修改, "." 可以指代所有
  • 撤销暂存区:
$ git reset HEAD ⽂件名 (暂存区-⼯作区)      # 将 add . 到 暂存区的文件 退回到 工作区
$ git checkout ⽂件名                      # 放弃当前对暂存区文件的修改
  • 仓库区代码不能撤销,只能回退

​ 2.10 版本对⽐

​ 例如:

$ git diff HEAD HEAD^ -- xxx.py
# HEAD表示当前版本, HEAD^表示上个版本, xxx.py对⽐的⽂件

2.11误删除⽂件,恢复

  • 格式1: rm ⽂件名(系统层面的删除操作)
# 恢复1:
$ git checkout -- ⽂件名       # 放弃当前对暂存区文件的修改
  • 格式2: git rm ⽂件名(对应操作是 git add, 相当于把 删除的操作行为 提交到了 暂存区 )
# 恢复2:
$ git reset --hard HEAD^

3.git多⼈操作

​ 3.1 clone项⽬到本地

$ git clone 项⽬地址

3.2 推送项⽬到远程仓库

$ git push

第⼀次推送会提示输⼊账号, 密码

3.3 配置是否输⼊登陆密码信息

$ git config --global credential.helper cache ⼗五分钟有效期
$ git config credential.helper 'cache --timeout==3600' ⼀个⼩时有效期
$ git config --global credential.helper store ⻓期有效

​ 3.4 拉取远程最新代码到本地

$ git pull

4.标签

​ 4.1 设置本地标签

$ git tag -a 标签名 -m '标签描述'

​ 4.2 推送本地标签到远程

$ git push origin 标签名

4.3 删除本地标签

$ git tag -d 标签名

4.4 删除远程标签

$ git push origin --delete tag 标签名

5.分⽀

5.1查看当前分⽀

$ git branch           # 查看分支
$ git branch -a        # 查看所有分支
$ git branch review    # 创建分支 review

5.2创建本地分⽀,并切换到指定分⽀

$ git checkout -b 分⽀名

5.3推送本地分⽀,到远程

$ git push -u origin 分⽀名

5.4切换分⽀

$ git checkout master / dev    #  切换到主分⽀,或者是其他分⽀

必须使用git init命令创建仓库,创建文件,比如 .gitignore ,执行 git add .git commit -m 'init初始化' (提交成功后),再使用 git branch 命令,才会显示出本地分支。否则报错

fatal: 不是一个有效的对象名:'master'。

$ git branch :    #查看本地分支
$ git branch -a :  #查看本地及远程仓库的分支

“因为git的分支必须指向一个commit,没有任何commit就没有任何分支。提交第一个commit后git自动创建master分支” -------廖雪峰

5.5合并子分⽀到主分支

git merge 分⽀

需要在master分⽀下操作改命令

​ 5.6删除一个已被终止的分支

如果需要删除的分支不是当前正在打开的分支,使用branch -d直接删除

git branch -d 

5.7删除一个正打开的分支

如果我们在试图删除一个分支时自己还没转移到另外的分支上,Git就会给出一个警告,并拒绝该删除操作。

如果坚持要删除该分支的话,就需要在命令中使用-D选项。

git branch -D 

你可能感兴趣的:(git 命令操作总结)