Git,命令 标题大全

Git初始化项目

  • 设置提交用户名称和邮箱
git config --global user.name "可乐cc";

git config --global user.email "12222222222@163.com";
  • 创建文件夹,与git 上仓库同名

    mkdir test-server
    
  • 打开文件夹

    cd test-server/
    
  • 初始化git

    git init
    
  • 创建说明文件

    touch README.md
    
  • 将说明文件暂存缓存

    git add README.md
    
  • 提交文件

    git commit -m "first commit";
    
  • 推送文件到master分支

    git push -u origin master
    

远程仓库

  • 创建SSH Key

    $ ssh-keygen -t rsa -C "keleccl@163.com"
    
  • 关联

    $ git remote add origin git@github.com: kelecc/web.git
    
  • 将本地内容推送到远程仓库(第一次)

    $ git push -u origin master
    
  • 将本地内容推送到远程仓库(之后)

    $ git push origin master
    
  • 删除远程仓库(解绑)

    $ git remote rm origin
    
  • 克隆远程仓库

    $ git clone git@github.com: kelecc/web.git
    
  • 克隆之后使用和查看

    $ cd gitskills
    $ ls
    
  • 查看远程库的信息

    $ git remote
    
  • 查看远程库的详细信息

    $ git remote -v
    

多人协作

  • 创建并切换到分支dev

    $ git checkout -b dev
    
  • //创建并切换到分支dev,同上

    $ git branch dev
    
  • 切换分支

    $ git checkout dev
    
  • 创建并切换到分支dev

    $ git switch -c dev
    
  • 直接切换分支

    $ git switch master
    
  • 查看当前分支

    $ git branch
    
  • 合并,把dev分支的工作成果合并到master分支上

    $ git merge dev	(--no-ff)(-m)
    
  • 删除dev分支

    $ git branch -d dev
    
  • 将现场储藏起来

    $ git stash
    
  • 查看储存的工作现场

    $ git stash list
    
  • 恢复和删除

    $ git stash apply
    $ git stash drop
    
  • 恢复并删除

    $ git stash pop
    
  • 复制修改

    $ git cherry-pick 4c805e2
    
  • 推送分支

    $ git push origin master(dev)
    
  • 创建远程origindev分支到本地

    $ git checkout -b dev origin/dev
    
  • 抓取分支(解决冲突)

    $ git pull
    
  • 指定本地与远程dev的链接

    $ git branch --set-upstream-to=origin/dev
    
  • 把本地未push的分叉提交历史整理成直线

    $ git rebase
    

版本控制

  • 查看工作区中文件当前状态

    $ git status
    
  • 查看文件内容

    $ cat test.txt
    
  • 查看每一次修改历史

    $ git reflog
    
  • 加参,简洁查看

    $ git log --pretty=oneline
    
  • 查看提交历史记录,从最近到最远,可以看到3次

    $ git log
    
  • 丢弃工作区的修改,即撤销修改

    $ git checkout -- test.txt
    
  • 丢弃暂存区的修改(若已提交,则回退)

    $ git reset HEAD test.txt
    

删除文件

  • 直接删除
$ git rm test.txt

$ git commit -m "remove test.txt"
  • 删错了,恢复
$ git checkout -- test.txt

标签管理

  • 打标签

    $ git tag v1.0	
    
  • 指定标签名和说明文字

    $ git tag -a v0.1 -m "version 0.1 released" 1094adb
    
  • 查看所有标签

    git tag
    
  • 若是忘记打,则查找历史提交commit id ,再打上

    $ git log --pretty=oneline --abbrev-commit
    
    $ git tag v0.9 f52c633
    
  • 查看标签详细信息

    $ git show v0.9
    
  • 删除标签

    $ git tag -d v0.1
    
  • 推送标签到远程

    $ git push origin v1.0
    
  • 一次性推送全部本地标签

    $ git push origin –tags
    
  • 删除标签,(若已推送到远程,先从本地删除,从远程删除)

    $ git tag -d v0.9
    $ git push origin :refs/tags/v0.9 
    

Git 使用 dev强制 覆盖本地及远程 master 分支(不推荐使用)

  1. 切换到dev分支:

    git checkout dev
    
  2. 删除本地的 master 分支:

    git branch -D master
    
  3. dev 分支复制到本地的 master 分支:

    git checkout -b master
    
  4. 推送到远程并覆盖仓库的master分支:

    git push -u origin master --force
    

Git 远程分支强制覆盖本地的分支(不推荐使用)

  1. 下载代码到本地

    git fetch --all
    
  2. 将 HEAD 指向最新下载的版本

    git reset --hard origin / 分支名
    

Gitdev 分支的代码合并到 master(推荐使用)

一、在 dev 分支上运行以下命令

  1. 暂存所有更改

    git add . 
    
  2. 将修改 提交到本地仓库,双引号内是提交的备注信息

    git commit -m "更改的备注信息" 
    
  3. 拉取远程 dev 分支代码

    git pull origin dev 
    
  4. 将本地修改的代码提交到远程的 dev 分支上

    git push origin dev 
    
  5. 切换到 master 分支

    git checkout master 
    

二、在 master 分支上运行以下命令

  • dev分支的代码合并到 master

    git merge dev 
    
  • 将当前的更改推送到远程的 master 分支上

    git push origin master
    
  • 执行完以上命令,此时 dev 分支与 master 分支的代码已同步。

Logo

开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!

更多推荐