mkdir: XX (创建一个空目录 XX指目录名)
pwd: 显示当前目录的路径。
git init 把当前的目录变成可以管理的git仓库,生成隐藏.git文件。
查看所有分支:git branch -a
远程:git branch -r
查看本机:git branch
创建分支:git branch test
使用fetch获取:git fetch origin guorunhe_test
把分支推到远程分支:git push origin test
切换分支:git checkout test
删除本地分支:git branch -d xxxxx
删除远程分支
git branch -r -d origin/branch-name
git push origin :branch-name
当前分支是master
git checkout master
把issueFix中的内容Merge进来:
git merge issueFix
二、git add
git add path 将文件或者目录提交到暂存区 其中add 与stage同义
git 1.x
git 1.x | new files | Modified Files | Deleted Files | |
git add -A |
√ | √ | √ | 所有文件均提交到暂存区【包括新增,修改,删除】 |
git add . | √ | √ | × | 部分文件均提交到暂存区【包括新增,修改】 |
git add -u [git add --update] |
× | √ | √ | 部分文件均提交到暂存区【包括修改,删除】 |
git 2.x
git 2.x | new files | Modified Files | Deleted Files | |
git add -A |
√ | √ | √ | 所有文件均提交到暂存区【包括新增,修改,删除】 |
git add . | √ | √ | √ | 所有文件均提交到暂存区【包括新增,修改,删除】 |
git add --ignore-removal . | √ | √ | × | 部分文件均提交到暂存区【包括新增,修改】 |
git add -u |
× | √ | √ | 部分文件均提交到暂存区【包括修改,删除】 |
git add -i [<path>] 查看<path>中被所有修改过或已删除文件但没有提交的文件,并通过其revert子命令可以查看<path>中所有untracted的文件,同时进入一个子命令系统
git add -i
staged unstaged path
: +/- nothing branch/t.txt
: +/- nothing branch/t2.txt
: unchanged +/- readme.txt *** Commands ***
: [s]tatus : [u]pdate : [r]evert : [a]dd untracked
: [p]atch : [d]iff : [q]uit : [h]elp
What now>
这里的t.txt和t2.txt表示已经被执行了git add,待提交。即已经添加到索引库中。
readme.txt表示已经处于tracked下,它被修改了,但是还没有被执行了git add。即还没添加到索引库中。
1、revert子命令
可以通过git add -i的revert子命令(3: [r]evert)把已经添加到索引库中的文件从索引库中剔除。
(3: [r]evert)表示通过3或r或revert加回车执行该命令。执行该命令后,git会例出索引库中的文件列表.
然后通过数字来选择。输入"1"表示git会例出索引库中的文件列表中的第1个文件。
"1-15"表示git会例出索引库中的文件列表中的第1个文件到第15个文件.回车将执行。
如果我们不输入任何东西,直接回车,将结束revert子命令,返回git add -i的主命令行。
2、update子命令
可以通过update子命令(2: [u]pdate)把已经tracked的文件添加到索引库中。其操作和revert子命令类似。
3、add untracked子命令
通过add untracked子命令(4: [a]dd untracked)可以把还没被git管理的文件添加到索引库中。其操作和revert子命令类似。
4、diff子命令
可以通过diff子命令(6: [d]iff)可以比较索引库中文件和原版本的差异。其操作和revert子命令类似。
5、status子命令
status子命令(1: [s]tatus)功能上和git add -i相似
6、quit子命令
quit子命令(7: [q]uit)用于退出git add -i命令系统
三、commit、diff、log等
git commit –m “XX” 提交文件 –m 后面的是注释。
git status 查看仓库状态
git diff XX 查看XX文件修改了那些内容
git diff 对比工作区和stage文件的差异
git diff --cached 对比stage和branch之间的差异
git log 查看历史记录【向后回退的看不到】
git log --pretty=oneline 查看简略的历史记录
git reflog 查看历史记录的版本号id【看到所有的】
git reset –hard HEAD^ 或者 git reset –hard HEAD~ 回退到上一个版本
(如果想回退到100个版本,使用git reset –hard HEAD~100 )
cat XX 查看XX文件内容
git checkout — XX 把XX文件在工作区的修改全部撤销。
git rm XX 删除XX文件
git remote add origin https://github.com/bjlhx5/testgit 关联一个远程库
git push –u(第一次要用-u 以后不需要) origin master 把当前master分支推送到远程库
git clone https://github.com/bjlhx5/testgit 从远程库中克隆
四、git branch
git branch name 创建分支
git checkout master 切换回master分支
git checkout –b dev 创建dev分支 并切换到dev分支上
git branch 查看当前所有的分支
git merge dev 在当前的分支上合并dev分支
git branch –d dev 删除dev分支
五、git stash
git stash 把当前的工作隐藏起来 等以后恢复现场后继续工作
git stash list 查看所有被隐藏的文件列表
git stash apply 恢复被隐藏的文件,但是内容不删除
git stash drop 删除文件
git stash pop 恢复文件的同时 也删除文件
git remote 查看远程库的信息
git remote –v 查看远程库的详细信息
git push origin master Git会把master分支推送到远程库对应的远程分支上