查看远程仓库

  1. git remote -v //查看远程仓库地址
  2. git remote // 查看远程仓库名称

git 修改remote地

要修改origin 可直接修改配置文件config

怎么修改?

git 能识别重命名文件嘛?

命令说明

  1. git -b local origin/master // 取远程分支并在本地分化一个新分支local
  2. git checkout master // 本地切换分支到master
  3. git cherry-pick 1231123// 择优,选择优先内容,后面跟的是commit hash码,取另外一个分支的修改后的hash
  4. 查看某一分支的log
  5. git log -1 local // 查看local分支的最近一条log

问题:cherry-pick之后,有冲突怎么解决?,work分支的代码怎么处理

手动修改代码之后,push失败怎么办?

问:push origin HEAD:ref/for/master 是push到哪了?

git 基本操作

  1. git status // 查看文件状态,修改,新增,删除,暂存
  2. git diff // 查看具体修改内容的对比,(工作区与暂存区的内容对比)
  3. git add name// 将文件放到暂存区 name为文件名
  4. git log // 查看项目commit 日志
  5. git log --pretty=oneline // 单行查看日志
  6. git commit -m "修改内容" // 将新的代码提交到版本库。
  7. git reset --hard HEAD^ // 版本回退
  8. git reset --hard [hash] //切换到某个版本,hash是commit log的hash码
  9. git reflog //查看历史命令
  10. git checkout -- <filename> // 撤销工作区的修改(如果暂存区有修改,则从暂存区覆盖当前内容,且暂存区的内容不会初始化,否则从版本库覆盖)
  11. git reset HEAD <fileName> // 删除暂存区尚未提交的修改,不会修改工作区内容。因为如果先暂存a 再将a修改为b,reset 之后,b未变为a
  12. git remote add origin <远程仓库地址> // 关联远程仓库
  13. git push -u origin master // 第一次推送master分支的所有内容; (参数-u是什么意思?)
  14. git push origin master // 推送到远程仓库 origin 代表了远程仓库的名字,(master代表本地当前分支?)
  15. 分支
  16. git checkout -b <branchName> // 创建分支
  17. git checkout -b branch-name origin/branch-name // 在本地创建和远程分支对应的分支
  18. git checkout <branchName> // 切换分支
  19. git branch // 查看当前分支
  20. git marge <name> 合并某分支到当前分支
  21. // 分支合并可能存在冲突,当存在冲突时需要手动合并代码,之后提交才能解决冲突。
  22. git branch -d <name> // 删除分支
  23. git log --graph --pretty=oneline --abbrev-commit // 查看分支合并图
  24. git log --graph(图) --pretty=oneline(单行) --abbrev-commit(缩写) // 查看分支合并图,
  25. git push origin <branch-name> // 提交本地分支<branch-name>到远程分支<branch-name>
  26. // 如果git pull提示no tracking information,则说明本地分支和远程分支的链接关系没有创建,用命令
  27. git branch --set-upstream-to <branch-name> origin/<branch-name>。
  28. 保留现场
  29. git stash // stash功能,可以把当前工作现场“储藏”,(注意,此命令只保存当前工作区)
  30. git stash pop // 恢复现场,删除储藏
  31. git stash list // 查看快照备份列表
  32. git merge --no-ff -m "merge" dev // 将dev分支合并到当前分支,并做一次提交
  33. 强行删除分支
  34. git branch -D <branch name> // -D强行删除分支
  35. git branch -d <branch name> // -d,如果分支存在未合并的代码,会提示