Git常用命令的整理,方便在git bash命令行下使用
git撤销本地未推送的commit:
git reset –hard commit_id
但是发现有个像git的bug:撤销之后的差异对比有可能不对!还不确定
查看工作目录状态
git status
git拉取远程变更
git pull origin master
注意:master是分支名称
git合并
git merge origin/master
注意:如果是github上的项目,前面必须带上origin,origin为远程仓库名
查看提交历史
git log
比如我只有一个分支,通过gitgui查看提交历史的时候
Resposity->Visualize master’s History,
会发现gui和命令行显示的log不太一样,git log命令显示的提交历史相当于仓库的提交历史。而在GUI log列表中多出来几个“岔出去”的节点,如testlog13,testlog11,testlog9。这几个commit没出现在仓库历史中,可能是由于我撤销了这几个修改。
所以可以看出,git log查看但是仓库的提交历史,而gui是本地所有提交过的提交,即使是撤销过的提交也能看到。
git将文件放到暂存区
git add filename.txt
其中filename.txt 是具体的文件名或路径通配,git add是固定的将修改文件放到暂存区(Stage)的命令,跟该文件是不是刚“创建”出来没半毛关系
git提交
git commit -m “git tracks changes”
其中,git commit 后面跟的 -m “git tracks changes”指的是提交说明,同时出现,仅git commit “??”是不行的。
git推送到远程仓库
git push -u origin master
其中-u参数不是必选的,直接命令 git push origin master也是可以的
退出vim编辑:
Ctrl+Z
Git创建分支
git checkout -b dev
其中,git checkout 后加-b参数相当于创建并切换。相当于以下两条命令
git branch dev
git checkout dev
查看当前分支,并列出所有本地分支
git branch
此外还可以使用 git branch –all 则指定显示所有远程分支
git与其他分支合并
git merge dev
git删除分支
git branch -d dev
切换远程分支到本地
https://www.cnblogs.com/john-h/p/5981185.html
git删除本地未追踪的文件
git clean -df
这部分的命令记录主要是为学习在命令行下解决纯文本的冲突。
Vi进入文件编辑
vi filename
如 vi test.txt即可进入vi编辑环境
开始插入编辑文件
默认刚刚进入vi环境是不能随心所欲编辑的,需要键盘输入’i’才能进入成插入编辑模式
退出vi编辑
按下’ESC’(退出INSERT模式),然后输入’:wq!’,即可退出vi并保存,但如果只是退出vi不保存修改,则输入’:q!’
浏览文件内容
cat test_1.txt
仅用来查看文件内容,不能编辑。
普通模式下常用命令
在普通模式下 h,j,k,l 键盘四个按键可以调整光标位置。
其中h:表示在当前行光标往回移,l:表示光标当前行往后移,j:表示光标移动到下一行,k:表示光标移动到上一行。
“ctrl+b”:屏幕往回移动一页 //b:back
“ctrl+f”:屏幕往下移动一页 //f:forward
“ctrl+u”:屏幕往回移动半页
“ctrl+d”:屏幕往下移动半页
按键盘上的大写”G”移动到文章的最后.
按”$”符号将光标移动到行尾
“^”将光标移到行头
“w”:将光标移到下一行头
“b”:跟”w”相反.移到上一行行头
“e”:将光标移到下一行尾.
命令行文件显示行号
在文件打开后 命令行输入’:set nu’即可,见gif图底部:
文本查找命令
文件打开后,底部命令行输入 ‘/hello’或 ‘?hello’来搜索
文本复制命令
文件打开后,底部命令行,以下输入按顺序键入字符即可,不要求同时按下多个字符
‘yw’,将光标所在之处到字尾的字符复制到缓冲区中。
‘yy’,复制光标所在行到缓冲区。
‘#yy’,例如,’6yy’表示拷贝从光标所在的该行”往下数”6行文字。
‘p’,将缓冲区内的字符贴到光标所在位置。注意:所有与”y”有关的复制命令都必须与”p”配合才能完成复制与粘贴功能
字符替换
‘r’:替换光标所在处的字符。,按一下”r”然后输入要即可. ‘R’:替换光标所到之处的字符,直到按下「ESC」键为止。如下图的命令过程,是在普通模式下 分别点了’r’->a-‘r’->b->’r’->’v’的替换结果。
命令行撤销 输入命令’u’可以撤销上次的操作,可以多次撤销,类似Ctrl+Z
最后附上一个最近的一个发现,码云上也有一个git的中文版教程,乍一看目录挺清晰的:
http://git.oschina.net/progit/index.html
我看的比较多的是廖雪峰的个人网站,实用性非常高:
https://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000
GitHub的一个教程书:《GitHub入门与实践》