盒子
盒子
Posts List
  1. 一. git 和 svn 比对
  2. 二. git 常见使用问题
    1. 设置git 不输入密码
    2. 获取远程分支到本地
    3. 冲突合并方法
    4. 多人同步开发减少merge记录
    5. 切换分支修改bug
    6. 回退某次commit
  3. 三. 常见命令
    1. 版本状态查看:
    2. 版本提交
    3. 提交文件到缓冲库
    4. 文件比较
    5. 查看log
    6. 版本库回滚
    7. 跳转某个版本
    8. 查看历史命令 (查找某个版本的commit id)
    9. 版本修改回退
      1. 回退没有提交到stage的修改
      2. 回退已经提交到stage的修改
      3. 回退版本库中的修改
    10. 版本库删除文件
    11. 暂存库删除文件
    12. 添加远程库
    13. 首次推送文件
    14. 推送修改文件到远程库
    15. 推送分支
    16. clone 远程库
    17. git 创建分支 并且切换分支
    18. 切换分支
    19. 查看分支
    20. 创建分支
    21. 删除分支
    22. 删除远程分支
    23. 强制删除分支
    24. 合并分支
    25. 打tag

git使用常见问题解决方法

一. git 和 svn 比对

  • git 是分布式的版本管理工具,没有中央版本库

  • git能很方便的离线进行代码版本管理,而不需要与服务器交互

  • git是三级结构,工作区/暂存区/版本库,中间多了一层暂存区stage,该结构保证git管理的是修改的内容,而不是文件

  • git版本回退非常方便和快捷 (git 版本跳转是指针的移动)

  • git提交的ID采用hash值表示,因为分布式

  • git切换分支修改BUG非常的方便,可以保存现场

二. git 常见使用问题

设置git 不输入密码

git config --global credential.helper store

获取远程分支到本地

git branch -a
git fetch origin branch_name

冲突合并方法

  1. 提交本地修改
    git add . && git commit -m “xxx”
  2. 拉取远程分支
    git pull
  3. 合并
    git mergetool
  4. 提交合并
    git commit -m “merge conflict”
  5. 提交远程分支
    git push

多人同步开发减少merge记录

  1. git add .
  2. git pull
  3. 处理merge
  4. git commit -m “XXX”
  5. git push

切换分支修改bug

  1. 保存现场 git stash
  2. 切换分支 git checkout master && git branch -b issue-01
  3. 修改提交 git add . && git commit -m “xx”
  4. 切回开发分支 git checkout dev
  5. 回到现场 git stash pop

回退某次commit

  1. git log 找到 commit id
  2. git reset –hard commit_id

三. 常见命令

版本状态查看:

git status

版本提交

git add app.js | git add . | git add * –

提交文件到缓冲库

git commit – 从缓冲库提交到版本库

文件比较

git diff app.js

查看log

git log | git log –pretty=oneline

版本库回滚

git reset –hard HEAD^ | git reset –hard HEAD^^ | git reset –hard HEAD~10

跳转某个版本

git reset –hard 9fecab**

查看历史命令 (查找某个版本的commit id)

git reflog

版本修改回退

回退没有提交到stage的修改

git checkout –app.js

回退已经提交到stage的修改

git reset HEAD app.js

回退版本库中的修改

git reset –hard HEAD^

版本库删除文件

git rm app.js
git commit

暂存库删除文件

git checkout –app.js

添加远程库

git remote add origin git@github.com:hucaihua/test

首次推送文件

git push -u origin master

推送修改文件到远程库

git push origin master

推送分支

git push origin dev

clone 远程库

git clone GIT_URL

git 创建分支 并且切换分支

git checkout -b dev

切换分支

git checkout dev|master

查看分支

git branch

创建分支

git branch dev

删除分支

git branch -d dev

删除远程分支

git push origin –delete baoxi

强制删除分支

git branch -D dev

合并分支

git merge –no-ff -m “merge no ff” dev

打tag

git tag v1.0

支持一下
扫一扫,支持牛头码农