git 工作中常用命令

  • https://learngitbranching.js.org/ git学习网站
git 工作中常用命令_第1张图片
clipboard.png
  • 生成秘钥和公钥

ssh-keygen -t rsa -C [email protected]
C:\Users\user.ssh目录下生成私钥:new 公钥:new.pub

git 工作中常用命令_第2张图片
clipboard1.png

  • windows下配置多个ssh key连接不同github 有多个则执行多次即可

    1、生成公钥和秘钥
    2、复制公钥new.pub内容加入github的SSH keys
    
git 工作中常用命令_第3张图片
clipboard2.png

3、在.ssh文件夹下的conf文件加入以下配置(没有conf则创建)

    Host binwu #自定义
    HostName github.com
    user git
    IdentityFile C:\Users\user\.ssh\id_rsa.binwugithub #秘钥
    #git clone Host:githubName/repositoriesName.git 下载项目命令
    #替换上面的值
    #Host:配置里的host
    #githubName:github用户名
    #repositoriesName:仓库名

4、查看是否配置成功

    ssh -T Host
clipboard3.png

5、下载项目

    git clone Host:githubName/repositoriesName.git
  • 忽略提交文件

    创建.gitignore文件,加入文件夹或文件名
    
  • 远程仓库覆盖本地

    git fetch --all git reset --hard origin/master
    git pull
    
  • 查看状态

    git status
    
  • 查看修改

    git diff 
    
  • 提交文件

    git add  多个文件用空格分开  或提交所有修改  git add .
    git commit -m "describe"
    git push origin branch
    
  • 查看日志

    -p 查看详细信息
    git log n
    git reflog (查看所有日志)
    git log --graph --pretty=oneline --abbrev-commit(查看分支合并情况)
    git log filename
    git log filename 查看修改详细信息
    git log --author username
    git log --grep keywords
    
  • 版本回退

    1、git reset --hard HEAD(HEAD表示当前版本,HEAD表示上一个版本,HEAD^表示上上一个版本……) 或者 git reset --hard commit_id (git log n查看日志有commit_id)

    2、提交代码

    方法一 :push的时候用--force,强制把远程库变成a -> b -> d,大部分公司严禁这么干,会被别人揍一顿
    方法二:做一个反向操作,把自己本地变成a -> b -> c -> d,注意b和d文件快照内容一莫一样,但是commit id肯定不同,再push上去远程也会变成 a -> b -> c -> d
    
  • 撤销工作区的修改(git add 后)

    git checkout --  (本地仓库覆盖工作区)
    
  • 撤销暂存区的修改(git commit 后)

    git reset HEAD  (远程仓库覆盖暂存区)
    
  • 删除文件

    git rm  (-r表示递归所有子目录)
    git status (查看状态)
    git checkout --  (撤销)
    git commit -m "describe"
    git reset HEAD (撤销,会撤销本地所有修改)
    git push
    
  • 创建分支

    git branch 
    git checkout -b  (创建并切换分支)
    
  • 删除分支

    git branch -d 
    git push origin --delete branch_name 删除远程分支
    git push origin :branch_name 删除远程分支(推送一个空分支到远程分支)本地:远程
    
  • 切换分支

    git checkout 
    
  • 合并分支

    git merge  (合并到当前分支)
    
  • 查看所有分支

    git branch (当前分支前面会标一个*号)
    git branch -r 查看远程分支
    
  • 查看分支图

    git log --graph --all --decorate
    git log --graph --all --decorate=short
    
  • 冲突解决

    查看冲突:git status
    手动修改冲突文件
    
  • 分支重命名

    git branch -m old new
    

你可能感兴趣的:(git 工作中常用命令)