主要是自己看,暂时列在这,日后再更新排版和详细内容—2.14
git设置
git config --global user.name “用户名”
git config --global user.email “邮箱(可以不是真实存在但是符合规范)”
查看配置信息
git config --list
远程仓库
git fetch git fetch origin
git pull
git push origin master 把master 分支推送到origin服务器上
git push origin branchname_local : branchname_remote 本地与远程名字相同时,可以省略远程
git push origin --delete <branchname> 删除远程分支
git remote git remote -v
git remote show origin
git remote rename old_branch_name new_branch_name
git remote remove branch_name 或者 git remote rm branch_name
git push --set-upstream origin branch_name
git pull --rebase
git branch --set-upstream-to=origin/test_branch test_branch
git commit 后,发现少提交文件: git add forgotten_file git commit --amend
标签
git tag git tag --list
git tag -a v1.2 -m “vesion v1.2” 附注标签
git tag v1.2-lw 轻量标签
git tag -a v1.2 9fceb12312
git push origin <tagname> 把标签推送到远程仓库服务器
git tag -d <tagname>
git push origin :refs/tags/<tagname> git push origin –delete <tagname>
别名
git config --global alias.co checkout
git config --global alias.br branch
git config --global alias.ci commit
git config --global alias.st status
分支
git reset HEAD 就是回退到当前版本
git reset HEAD^ 专门用于回退到上一个版本
git branch <new_branch_name>
git branch -d <branch_name> 删除分支, -D 强制删除
git reset --hard (--soft) 123abc.....(commit ID)
git log –graph
如果有冲突,有ide的可视化界面解决或者git mergeool
git branch -a 查看全部分支(包含本地和远程)
git branch -v 查看每个分支的最后一次提交
git branch --merge --nomerge
git branch -u origin/serverfix --set-upstream-to
git checkout -b branchName commitId 根据指定版本号创建分支
git branch –set-upstream-to=origin/test test
git branch -vv
git pull = git fetch + git merge HEAD
git pull --rebase = git fetch + git rebase HEAD
git push origin --delete remote-branch
git fetch -p 清理本地无效分支(远程已删除本地没删除的分支)
合并代码: merge rebase
git checkout experiment ---> git merge experiment
git checkout experiment、 git rebase master、git checkout master 、git merge experiment
git rebase --onto master server client 取出 client 分支,找出它从 server 分支分歧之后的补丁, 然后把这些补丁在 master 分支上重放一遍,让 client 看起来像直接基于 master 修改一样
git rebase master server → git checkout master → git merge server
子模块
git submodule
git submodule add ‘my_repo的仓库地址’
git恢复删除的分支
git reflog命令找到被删除分支的最后一次提交记录的commitSHA值
利用“git checkout -b dev 获取到的commitSHA值”命令恢复删除的分支即可
1.使用git log -g 找回之前提交的commit
2.使用git branch recover_branch[新分支] commit_id命令用这个commit创建一个分支
3.切换到recover_branch_abc分支,检查文件是否存在
基于某个commit创建新分支
- git log 查看历史commit信息
- git checkout [commitid] -b [new-branch-name] 来根据某个commit创建新分支
- 推送到仓库中 git push origin [new-branch-name] 就会在仓库中生成一个新的 branch 用于接下来的开发
- 本地分支与远程分支建立跟踪 git push --set-upstream origin [new-branch-name]
其他
查看一些缩写统计信息,则可以使用以下选项:git log --stat
查看当前分支是基于哪个分支创建的 git reflog --date=local --all | grep 分支名称
根据commitID 找到对应的分支 git branch -a --contains d6b18e…
获取某个分支对应的远程分支名称 git symbolic-ref -q --short HEAD
撤销git add 命令 git reset HEAD ,后面跟文件名或者文件夹,就可以撤销对应的add文件
撤销git commit: git reset --mixed 撤销git commit 和git add,代码不动
把某一次的改动拿到另外一个分支里: git checkout dev git cherry-pick
git config --list --global/–local 查看当前git的配置
git config --global/–local user.name “test”
git config --global/–local user.email “test@163.com”
git多次提交代码,如果两次的代码修改是一个位置,后提交会覆盖前面的提交;若两次修改不一样,那么两次的修改都会出现