git 用户名配置
git config --global user.name "xiayu"
git config --global user.email "xiayu"
git config --global -- list
Git查看分支
Git查看本地分支
git branch
Git 查看远程分支
git branch -a
Git 显式地获得远程引用的完整列表
git ls-remote (remote) // 括号不用于执行代码
Git 查看当前项目的修改状态
git status
Git 查看尚未暂存的文件更新了哪些部分
git diff
Git 查看已暂存的将要添加到下次提交里的内容
git diff --staged
或者
git diff --cached
Git 查看哪些分支已经合并到当前分支
git branch --merged
Git查看所有包含未合并工作的分支
git branch --no-merged
查看当前分支的提交日志
git log
查看本地分支与远程分支的关联关系
git branch -vv
创建分支
创建远程分支
git push origin (local association branch name):(remote branch name)// 括号不用于执行代码
注:首先有一个为关联远程分支的本地分支 此方式同时创建了远程分支和本地关联分支
创建本地分支
git checkout -b (local branch name) // 括号不用于执行代码
Git 删除命令
Git删除本地分支
git branch -d (branch name)// 括号不用于执行代码
注:在当前本地分支,无法删除自身(在localMaster分支上执行git branch -d 提示:error: Cannot delete branch 'studyBranch' checked out at '/Users/edz/Desktop/XiayuGitHub/RechText')
删除远程分支
git push origin --delete (remote branch name) // 括号不用于执行代码
注:如果提示unable to delete 'origin/BEXProMaster': remote ref does not exist,使用 git push origin BEXProMaster 关联远程分支,再次执行删除命令即可
git push origin :(remote branch name)// 括号不用于执行代码
合并分支
git merge
关联远程分支
撤销添加到缓存区的文件
git rm --cache 文件名
git删除未追踪的文件
在利用 git 工作时,工程目录下经常会出现一些未跟踪文件,虽然 git 支持通过 .gitingore 文件添加一些忽略文件类型和文件目录。但有时需要清理一些临时文件和自动生成的文件,手动删除显得太麻烦,这时你可以利用 git clean 命令来帮你完成这项操作。
git clean 命令支持以下参数:
git clean [-d] [-f] [-i] [-n] [-q] [-e ] [-x | -X] [--] ...
其中几个主要参数用法如下:
-d # 删除未跟踪目录以及目录下的文件,如果目录下包含其他git仓库文件,并不会删除(-dff可以删除)。
-f # 如果 git cofig 下的 clean.requireForce 为true,那么clean操作需要-f(--force)来强制执行。
-i # 进入交互模式
-n # 查看将要被删除的文件,并不实际删除文件
通过以上几根参数组合,基本上可以满足删除未跟踪文件的需求了。例如在删除前先查看有哪些文件将被删除运行:
git clean -n
想删除当前工作目录下的未跟踪文件,但不删除文件夹运行(如果 clean.requireForce 为 false 可以不加 -f 选项):
git clean -f
想删除当前工作目录下的未跟踪文件以及文件夹运行:
git clean -df
git 重命名本地分支和远程分支
参考链接.
1. switch to branch which needs to be renamed
2. git branch -m <new_name> (在当前本地分支下)
注:如果要在指向任何分支时重命名分支,请执行以下操作:git branch -m <oldname> <newname>
3. git push origin :<old_name>
4. git push origin <new_name>:refs/heads/<new_name>
This is an [example link]
Git pull 撤销误操作
1、git reflog命令查看你的历史变更记录
2、$ git reflog
bd46903 (HEAD -> old, origin/master, origin/HEAD, master) HEAD@{0}: checkout: moving from master to old
9bd46903 (HEAD -> old, origin/master, origin/HEAD, master) HEAD@{1}: commit (merge): cocoapods保持
94a0a4e4 HEAD@{2}: reset: moving to 94a0a4e4
94a0a4e4 HEAD@{3}: commit: 解决cocoapods报错问题
然后用git reset --hard HEAD@{n} ( git reset --hard 94a0a4e4)。
Git基于远程仓库创建本地分支
git checkout -b new-branch-name origin/new-branch-name
Git基于远程仓库创建本地分支 出错解决方案
将本地分支与远程分支相关联
git branch --set-upstream-to=origin/<branch> FD-41448
注:<branch> 为远程分支的名字
FD-41448 为本地分支的名字
终端中打开用户界面
解决:手动安装gitk
终端输入:brew install git-gui
不能撤销本地修改(error:path…is unmerged)
git checkout HEAD foo/bar.txt
删除本地分支
git branch -d <branch>
删除远程分支
git push <remote> --delete <branch>
<remote> 一般未origin
git本地分支添加注释
git config branch.{branch_name}.description 这里是注释
查看本地分支的注释
git config branch.{branch_name}.description
查看所有
- 首先安装git工具 git-br
npm i -g git-br
- 使用
git br
查看两个分支不同的文件
Git diff branch1 branch2 --stat
显示指定文件的差异
Git diff branch1 branch2 文件名(带路径)
对比两个分支有哪些文件修改
git diff master FD-70673 --stat
网友评论