Git 基本命令行

本文主要对一些常用的git命令行进行了分类汇总

初始化仓库
git init
文件添加到暂存区
git add test.txt
文件提交
git commit -m "test file commint"
文件删除
git rm test.txt
与远程仓库关联
git remote add origin git@server-name:path/repo-name.git
仓库地址替换
git remote rm origin(删除本地仓库关联的远端仓库地址)

git remote add origin newUrl(添加新的仓库地址)
push内容到远程分支
git push -u origin master (首次提交,将本地git默认创建的master分支跟远程代码库关联,并push)

git push origin master(后续提交,如若远端没有这个分支,则自动新建分支)
版本回滚

git reset 共有3种模式,分别是

  • git reset –mixed 保留现有工作区,但是会用指定的commit覆盖暂存区。

  • git reset –soft 保留暂存区,但是会清空工作区。

  • git reset –hard 简单粗暴,直接使用指定的commit的内容覆盖stage区以及工作区。

git reset --hard HEAD^ 回滚到上一版本

git reset --hard HEAD^^ 回滚前到两个版本

git reset --hard 123456578 回滚到指定哈希值的版本号
撤销修改
  • 尚未add的文件撤销修改

    java
    git checkout -- test.txt (撤销当前工作区的修改,返回最新暂存区的内容)

  • 针对于已经add到暂存区的文件

    git reset HEAD test.txt (回滚)
    
    git checkout -- test.txt (并丢弃)
  • 针对已经commit,但是尚未push到远端的文件

    git reset --hard HEAD^ 回滚到上一版本
分支
  • 查看当前分支

    git branch
    • 新建分支
    git checkout -b dev (新建并切换)
    
    git branch dev (新建分支)
    
    git checkout -b branch-name origin/branch-name(新建与远端对应的分支)
  • 删除分支

    git branch -d dev
    
    git branch -D dev (忽略警告,强制删除)
    
    git fetch -p (删除没有远程对应分支的本地分支)
    
    git push --delete origin dev (删除远程分支)
  • 切换分支

    git checkout master
  • 切换到指定tag

    git checkout tag_name
  • 合并分支(merge以及rebase两种)

    git merge dev (假设当前在master分支,则表示将dev合并到master上)
    
    git rebase dev(同上)
  • 本地分支和远程分支做关联

    git branch --set-upstream dev origin/dev
  • 拉取远端最新代码

    git pull
tag管理
  • 新建tag

    git tag v1.0.0
  • 指定commit上添加tag

    git tag v1.0.0 xxxxxx
    
    git tag -a v1.0.0 -m "add version 1.0.0 tag" xxxxxx (带提交的信息)
  • 查看所有tag

    git tag
  • 查看tag信息

    git show v1.0.0
  • 删除tag

    git tag -d v1.0.0 (删除本地)
    
    git push origin :refs/tags/v1.0.0 (再删除远端的tag)
  • push tag至远端

    git push origin v1.0.0 (push 指定tag)
    
    git push origin --tags (push所有tag)
  • 获取远端tag

    git fetch origin tag v1.0.0 (更新tag)
    
    git pull --tags (获取远端所有的tag)
    
    git pull --all (用于解决远端tag无法再本地显示的问题)
参考文献

廖雪峰的官网-Git教程

猜你喜欢

转载自blog.csdn.net/shuangpinai2014/article/details/80552375