--文件目录操作命令
|
1 mkdir * |
创建一个空目录 *指目录名 |
|
2 pwd |
显示当前目录的路径。 |
|
3 cat * |
查看*文件内容 |
|
4 git rm * |
删除**文件 |
--git初始化操作
|
1 git init |
把当前的目录变成git仓库,生成隐藏.git文件。 |
|
2 git remote add origin url |
把本地仓库的内容推送到GitHub仓库。 |
|
3 git clone git@url/test.git |
从远程库克隆 |
|
4 git add * |
把修改的文件添加到暂存区去。 |
|
5 git commit –m "*" |
提交文件 –m 后面的是注释。 |
--git 克隆分支
|
1 git clone xxx.git |
最简单直接的命令 |
|
2 git clone xxx.git "指定目录" |
clone到指定目录 |
|
3 git clone -b branchname xxx.git |
clone时创建新的分支替代默认Origin HEAD(master) |
--clone 远程分支
git clone 命令默认的只会建立master分支,如果你想clone指定的某一远程分支(如:dev)的话,可以如下:
1. 查看所有分支(包括隐藏的) git branch -a 显示所有分支
1 * master
2 remotes/origin/HEAD -> origin/master
3 remotes/origin/dev
4 remotes/origin/master
2. 在本地新建同名的("dev")分支,并切换到该分支
1 git checkout -t origin/dev 该命令等同于:
2 git checkout -b dev origin/dev
--查看命令
|
1 git status |
查看仓库状态 |
|
2 git diff * |
查看X文件修改了那些内容 |
|
3 git log |
查看历史记录 |
|
4 git reflog |
查看历史记录的版本号id(记录你的每一次命令,不论是否提交) |
|
5 git log --pretty=oneline |
如果信息量太多可以进行比较好的列表显示 |
--版本回退
|
1 git reset –hard HEAD^ |
回退到上一个版本 |
|
2 git reset --hard HEAD~ |
第几个 如果想回退到第3个版本,使用git reset–hard HEAD~3 |
|
3 git reset --hard 057d |
回退到某一个具体的版本号 |
--撤销修改
|
1 git checkout file-name |
恢复某个已修改的文件(撤销未提交的修改) |
|
2 git revert HEAD |
还原最近一次提交的修改: |
|
3 git revert commit-id |
还原指定版本的修改 |
--分支管理
|
$ git branch |
查看本地所有的分支 |
|
$ git branch -a |
查看远程所有的分支 |
|
$ git branch <branch name> |
创建分支 |
|
$ git branch -D <branch name> |
删除dev分支 |
|
$ git push origin --delete <branch name> |
删除远程的dev分支 |
|
$ git branch -m <old branch name> <new branch name> |
重命名分支 |
|
$ git checkout -b <branch name> |
创建dev分支 并切换到dev分支上 |
|
$ git merge <branch name> |
在当前分支上合并dev分支代 |
|
$ git push origin <branch name> |
把当前新建的分支推送到远程库(远程仓库没有给分支则会新建立该分支) |
|
$ git checkout — * |
把XX文件在工作区的修改全部撤销。 |
|
$ git checkout master |
切换回master分支 |
|
$ git push --set-upstream origin dev |
提交修改并创建远程分支dev |
--tag相关操作
|
1 git tag |
列出所有的 tag |
|
2 git tag name |
打轻量标签 name |
|
3 git tag -d name |
删除本地的 tag |
|
4 git push origin --delete tag name |
删除远程的 tag |
|
5 git show name |
查看 tag 信息 |
|
6 git push origin name |
将 tag 提交到远程 |
--隐藏的文件
|
1 git stash |
把当前的工作隐藏起来 等以后恢复现场后继续工作 |
|
2 git stash list |
查看所有被隐藏的文件列表 |
|
3 git stash apply |
恢复被隐藏的文件,但是内容不删除 |
|
4 git stash drop |
删除文件 |
|
5 git stash pop |
恢复文件的同时 也删除文件 |
--查看远程库信息(git remote的用法)
|
1 git remote |
查看远程库的信息 |
|
2 git remote –v |
查看远程库的详细信息 |
|
3 git remote add name url |
添加远程仓库 |
|
4 git remote rename oldname newname |
重命名仓库 |
|
5 git remote rm |
删除仓库 |
--将远程分支拉取到本地
1 方法一:
|
$ git checkout -b 本地分支名x origin/远程分支名x |
2 方式二:
|
$ git fetch origin 远程分支名x:本地分支名x |
--git pull操作
git pull命令的作用是,取回远程主机某个分支的更新,再与本地的指定分支合并,基本的格式如下。
|
$ git pull <远程主机名> <远程分支名>:<本地分支名> |
|
取回origin主机的next分支,与本地的master分支合并,需要写成下面这样
|
$ git pull origin next:master |
|
如果远程分支是与当前分支合并,则冒号后面的部分可以省略。
|
$ git pull origin next |
|
上面命令表示,取回origin/next分支,再与当前分支合并。实质上,这等同于先做git fetch,再做git merge。
|
$ git fetch origin |
|
$ git merge origin/next |
在某些场合,Git会自动在本地分支与远程分支之间,建立一种追踪关系(tracking)。比如,在git clone的时候,所有本地分支默认与远程主机的同名分支,建立追踪关系,也就是说,本地的master分支自动”追踪”origin/master分支。
Git也允许手动建立追踪关系。
|
$ git branch --set-upstream master origin/next |
|
上面命令指定master分支追踪origin/next分支。如果当前分支与远程分支存在追踪关系,git pull就可以省略远程分支名。
|
$ git pull origin |
|
--git 设置大小写敏感
Windows上的Git默认是大小写不敏感的,这样多平台写作就可能会出现问题。Win上的Git设置为大小写敏感的命令如下
|
$ git config core.ignorecase false |
|
--git 设置忽略文件或文件夹权限修改
|
$ git config core.filemode false |
|
--创建追踪分支
不带任何参数的git push,默认只推送当前分支,这叫做simple方式。此外,还有一种matching方式,会推送所有有对应的远程分支的本地分支。Git 2.0版本之前,默认采用matching方法,现在改为默认采用simple方式。如果要修改这个设置,可以采用git config命令。
|
$ git config --global push.default matching |
|
或者
|
$ git config --global push.default simple (最好使用这种方式) |
|
$ git branch --track master origin/master //在使用 git branch 命令时加上 '--track' 参数, 来手动创建一个追踪分支 |
--切换git 命令提示中文到英文
ubuntu装的git不知道怎么就出现全中文的提示,不太好,果断切换到中文了,切换方法如下:
|
1、echo "alias git='LANG=en_GB git'" >> ~/.bashrc |
写入 |
|
2、source ~/.bashrc |
生效 |
--git 删除未添加到版本中的文件或者文件夹
git checkout 只能回退在版本中的修改或者删除, 对于新添加的文件是没有作用的, 也就是说, 新建的文件或者文件夹是:Untracked files, 要删除或者清理掉这些文件,需要使用 git clean 命令:
|
$ git clean -f |
删除 untracked files |
|
$ git clean -fd |
连 untracked 的目录也一起删掉 |
|
$ git clean -xfd |
连 gitignore的untrack 文件/目录也一起删掉 (一般这个是用来删掉编译出来的 .o一类的文件) |
在使用清理 git clean之前,建议加上 -n 来先看看会删掉哪些文件,防止重要文件被误删
|
$ git clean -nxfd |
|
$ git clean -nf |
|
$ git clean -nfd |
本文详尽列举了Git的各种操作,包括创建和删除目录、查看文件内容、初始化Git仓库、克隆与分支管理、版本回退、撤销修改、标签管理、隐藏文件处理、远程库信息查看及远程分支拉取。此外,还涵盖了设置Git的大小写敏感、忽略文件权限修改、创建追踪分支以及切换命令提示语言等内容,是Git学习者的实用参考资料。
9493

被折叠的 条评论
为什么被折叠?



