Git使用笔记

227 阅读2分钟
  • $ git clone // 本地如果无远程代码,先做这步,不然就忽略

  • $ git status // 查看本地自己修改了多少文件

  • $ git add . // 添加远程不存在的git文件

  • $ git commit -m "更新说明" // 提交修改
  • $ git commit --amend -m 'commit description' // 修改最近的提交说明

  • $ git pull //提交代码前先更新线上代码

  • $ git push //更新提交到到远程服务器上
  • $ git push origin -u branch-name 将本地分支推送到远端并建立连接

  • $ git checkout master //进入master主分支,也可以拉去进入其他分支
  • $ git checkout -b dev //从已有的分支创建新的分支(如从master分支),创建一个dev分支
  • $ git checkout -- file //撤销工作区的修改

  • $ git merge new brank //合并新分支到主分支上

  • $ git rm //移除文件

  • $ cd //定位到你blog的目录下

  • $ mkdir text//在当前目录新建text文件夹

  • $ git log 查看提交记录
  • $ git log --oneline --graph -author='authorName' // 查看提交日志:
  • $ 查看某一个文件的提交日志: git log -p filename, git log -p 查看所有提交的详细文件修改
  • $ 查看某一个文件的某几行提交日志: git log -L 1,10:filename

补充

  1. git fetch --prune 清理远程没有的本地分支

  2. git branch -d branchName 删除本地分支

  3. git branch |grep 'branchName' |xargs git branch -d 批量删除本地匹配到的branchName的git分支

  4. git config core.ignorecase false 让git 对文件大小写敏感

  5. git 错误 " bad index file sha1 signature fatal: index file corrupt"

  解决方案: 删除 .git/index , 执行git reset 命令

  1. git reset --hard HEAD 撤销还没commit的merge,或者放弃工作区的改动

    git reset --hard commit-id 回滚到commit-id

  2. git reset HEAD 将文件从暂存区撤销

  3. git reflog 查看所有操作记录

  4. git remote -v 查看远程仓库地址

  5. 设置用户名和邮箱: git config --global user.name 'name' , git config --global user.email 'xxx@xxx.com'

  6. 在本机生成RSA, 公钥: ssh-keygen -t rsa -C "you@email.com'

  7. 更改push 模式, git config -- global push.default simple 或者 git config --global push.default matching

  8. 查看工作区某个文件所做的改动与暂存区比较: git diff filename

  9. 查看暂存区和上次提交之间的区别: git diff -cached filename

  10. 删除远程分支: git push origin :remote-branch

  11. 比较当前分支与另一个分支的文件差异: git diff branch-name fileName

  12. 查看另一个分支上的某一个文件: git show branch-name:fileName

  13. 合并另一个分支的某一次提交: git cherry-pick commitId

  14. 显示工作区根目录 git rev-parse --git-dir

  15. 相对于工作区根目录的相对目录:git rev-parse --show-prefix

  16. 显示当前目录后退到工作区的根目录深度:git rev-parse --show-cdup

  17. 编辑git配置文件:项目配置git config -e 全局配置 git config -e --global, 系统配置 git config -e --system

  18. 获取配置项: git config core.ignorecase, 设置配置项:git config core.ignorecase false

  19. 创建版本库: git init 或者 git init dirname (创建工作区,并在此目录下创建版本库)

  20. 设置别名: git config --global alias.st status , git conifg --global alias.ci commit

  21. 显示某一个提交所改动的文件: git show --stat commitId

  22. 通过配置全局git ignore 文件而忽略文件:git config --global core.excludesfile ~/.gitignore