git常见命令

15 阅读3分钟
    • git的一些基础知识
      • git的几大区域
        • 工作区:项目的根目录,工作的地方
        • 暂存区:临时存放改动,保存即将提交的文件列表信息
        • 本地仓库区:存放数据的地方,这里拥有提交的所有版本信息,HEAD指向最新放入仓库的版本
        • 远程仓库:托管代码的服务器
  • 创建git用户(只需要配置一次)

    为什么要创建git用户?git的每次操作都是以用户为单位的,这样就可以知道是谁做了什么操作

    git config --global user.name <name>       //设置用户名
    git config --global user.email <email>     //设置邮箱
    git config --list                          //查看设置
    git config <information>                   //查看指定设置
  • 本地仓库初始化(目的:创建一个新的仓库并将其设置为管理和跟踪代码的起点)
pwd           //查看当前工作目录在哪
mkdir <path>  //创建一个本地的文件夹作为仓库
cd <path>     //进入创建的文件夹仓库
git init      //初始化git仓库
  • 添加文件到暂存区
git status          //查看缓冲区的文件
git diff            //查看尚未添加的文件相对于缓存区文件所修改的内容
git add <fileName>  //添加指定文件到暂存区
git add .           //添加当前目录下所有文件
git ls_files        //查看已添加的文件
  • 将暂存区文件提交到本地仓库
git diff --staged       //比较暂存区文件与上一次提交的差别
git diff --cached       //同上
git commit -m <info>    //带提交信息的提交
  • 删除文件
git rm --cached <name>     //删除暂存区文件
git rm -f <name>           //删除工作区的文件,同时删除在暂存区的记录
  • 重命名文件
git mv 旧文件名 新文件名
  • 恢复操作
git restore <name>            //将工作区的文件恢复到最近一次提交的状态,即撤销对文件的修改
git restore --staged <name>   //恢复暂存区的文件,即将文件从暂存区移回到工作区
git restore <commit> --<name> //将指定提交版本的文件恢复到工作区
  • 远程仓库配置操作
git remote add <remote_name> <remote_url>   //添加远程仓库
git remote -v                               //查看已经配置的远程仓库列表和URL
git remote set-url <remote_name> <new_url>  //修改已经配置的远程仓库URL
git remote remove <remote_name>             //删除已经配置的远程仓库
  • 分支操作
git branch                     //查看本地仓库的所有分支
git branch -a                  //查看本地和远程的所有分支
git branch -r                  //查看远程的所有分支
git branch <branch_name>       //创建一个新的分支
git branch -m <new_name>       //重命名当前分支
git branch -D <branch_name>    //删除本地分支
git checkout <branch_name>     //切换到本地仓库的某个分支
git checkout -b <new_name>     //创建一个分支并切换到该分支

  • 提交推送
git push                               //推送当前分支到远程与之相关的分支 
git push <remote_name> <branch_name>:<remote_brance_name>//推送本地仓库指定分支到远程指定分支
  • 克隆远程仓库到本地
git clone <url>                    //克隆远程分支到本地
git clone <branch_name> <url>      //克隆远程指定分支到本地
  • 拉取远程代码
git pull                                  //拉取远程仓库默认分支,并与当前分支合并
git pull <remote_name> <branch_name>      //拉取远程仓库指定分支并与当前分支合并
git fetch <remote> <branch>               //拉取指定远程指定分支的代码
git merge <branch>                        //将指定分支的提交合并到当前分支
  • 回退提交
git reset --hard HEAD^        //删除最新的提交,将工作区的文件恢复到上一个提交
git revert <commit>           //创建一个新的提交
  • 文件暂存
git stash              //将当前工作目录中的修改保存到一个新的存储区,这将清空工作目录中的修改,回到上一次提交的状态
git stash list         //查看当前存储区的列表
git stash apply        //将最近的存储区中的修改重新应用到当前目录,但不会删除存储区
git stash drop         //删除最近的存储区
git stash pop          //将最近的存储区中的修改重新应用到当前目录,并会删除存储区