Git的基本使用

1.Git基本信息设置

  1. 设置用户名

    git config --global user.name '填写自己的GitHub用户名'
  2. 设置用户邮箱

    git config --global user.email '填写自己的邮箱'

2.Git本地仓库提交代码到GitHub远程仓库

  1. 初始化Git本地仓库(在项目文件夹内使用git init命令初始化git仓库,会自动生成一个.git文件夹)

    git init
  2. 将初始化后的本地git仓库与GitHub上的远程仓库进行关联,关联后可将本地仓库代码提交到远程仓库进行版本管理(SSH地址关联,需要先设置SSH秘钥)

    git remote add origin git@github.com:[自己的GitHub用户名]/[GitHub上创建的仓库名].git

    查看关联的远程仓库

    git remote -v

    删除关联的远程仓库

    git remote rm origin
  3. 查看本地仓库的状态,查看本地仓库有没有文件(不是查看文件夹里是否有文件)

    git status
  4. 切换提交的分支

    git checkout -b master # 切换到master分支,
    #2020年10月后github新建仓库默认分支改为main,注意更改
    # 如果不是,后面的所有设置的分支记得保持一致
  5. 提交文件到缓存区

    git add 要提交的文件名 #如果要提交仓库中所有的文件,则使用 git add .
  6. 将缓存区的文件提交到本地仓库

    git commit -m "提交时的描述,比如此次提交做了什么修改等"
  7. 将提交到本地仓库的文件项目提交到关联的GitHub远程仓库

    git push origin main
  8. 如果提交远程仓库时报错,远程仓库和本地仓库有冲突时,先合并仓库在提交

    git pull --rebase origin main

3.git命令回退方法

我们在使用git命令的时候,有时候误输入命令,导致需要回退到之前的状态。现在针对这种情况做一个汇总:

  1. Git add回退

    git status #先看一下add中的文件,确定已经添加的文件。

    git reset HEAD #如果后面什么都不跟的话,就是add已添加的全部撤销。

    git reset HEAD xxx.cpp #只撤销所列出的文件。
  2. Git commit回退

    git reset --soft HEAD^ 
    #这样就成功的撤销了你的commit。
    #注意,仅仅是撤回commit操作,您写的代码仍然保留。
  3. Git review回退

    git checkout [分支名] #切换到需要回退的分支
    git log #查看提交记录
    git reset --hard #代码回退
    git reset --hard [commit id] #复制最近提交的上一条提交记录的commit id
    git review #重新提交修改
  4. Git rebase回退

    git reflog #先查看本地提交操作编号。
    #找到提交前的项目编号,例如4c173eb HEAD@{3}: commit: scan ,执行:
    git reset --hard 4c173eb
  5. Git cherry-pick回退

    git cherry-pick --abort.
HEAD^ :意思是上一个版本,也可以写成HEAD~1,如果你进行了2次commit,想都撤回,可以使用HEAD~2;
--mixed:不删除工作空间改动代码,撤销commit,并且撤销git add . 操作,这个为默认参数:git reset --mixed HEAD^ 和 git reset HEAD^ 效果是一样的;
--soft:不删除工作空间改动代码,撤销commit,不撤销git add . ;
--hard:删除工作空间改动代码,撤销commit,撤销git add . ;
顺便说一下,如果commit注释写错了,只是想改一下注释,只需要: git commit --amend ;