git使用

开源  收藏
1 / 244

查看状态

git status

  • 该命令可以查出当前分支文件变更状态

  • 可以查出 工作区/暂存区/仓储区 中的状态

  • 显示出, 新增/删除/(路径)重命名/已暂存 等文件状态.

git diff

查看具体的修改内容

从远程厂库更新到本地

方法1

$ git fetch origin master //从远程的origin仓库的master分支下载代码到本地的origin master

$ git log -p master.. origin/master//比较本地的仓库和远程参考的区别

$ git merge origin/master//把远程下载下来的代码合并到本地仓库,远程的和本地的合并

方法2

$ git fetch origin master:temp //从远程的origin仓库的master分支下载到本地并新建一个分支temp

$ git diff temp//比较master分支和temp分支的不同

$ git merge temp//合并temp分支到master分支

$ git branch -d temp//删除temp

方法3

git pull origin master

上述命令其实相当于git fetch 和 git merge从远程获取最新版本并merge到本地,git pull <远程主机名> <远程分支名>:<本地分支名>

方法4 放弃本地修改强制更新

git fetch --all
git reset --hard origin/master

提交项目

git add filename //将文件添加至暂存区

git add . //将所有文件添加至暂存区

git commit -m 'XXXX' //将文件提交到本地仓库
git push origin master //将文件提交到远端仓库,git push <远程主机名> <本地分支名>:<远程分支名>

版本

列出tag

git tag

加上-l过滤

git tag -l "v3.3.*"

新建tag

git tag v1.0//创建一个名为v1.0的tag

新建有备注信息的tag

git tag -a tagName -m "my tag" //-a参数来创建一个带备注的tag,备注信息由-m指定

查看tag详细信息

git show tagName

给指定的某个commit号加tag

git tag -a v1.2 9fceb02 -m "my tag"

将tag同步到远程服务器

git push origin v1.0//git push origin [tagName]推送单个分支,推送本地所有tag,使用git push origin --tags。

提交项目到已存在远程分支

git add . //将所有文件添加至暂存区
git commit -m 'XXXX' //将文件提交到本地仓库

git branch xf //新建本地分支:git branch

git branch -a //查看该项目的所有本地和远程分支,git branch 查看本地分支,git branch -r 查看远程分支

git checkout xf//切换本地分支

git pull origin xf:xf//把远程分支的代码pull到本地分支,git pull <远程主机名> <远程分支名>:<本地分支名>

git push origin xf:xf//将本地的xf分支推送到origin主机的xf分支。git push <远程主机名> <本地分支名>:<远程分支名>

git push origin test//如果省略远程分支名,则表示将本地分支推送与之存在"追踪关系"的远程分支(通常两者同名),如果该远程分支不存在,则会被新建,将本地的test分支推送到origin主机的test分支。如果后者不存在,则会被新建。

克隆项目

回退

//表示回退到当前版本,HEAD指向当前版本。如果你修改了一些代码,想去除,就可以用git reset --hard HEAD一次性去除。
git reset --hard HEAD


//也可以回退到指定的版本
git checkout commit id

分支

查看远程分支
~/mxnet$ git branch -a
* master
remotes/origin/HEAD -> origin/master
remotes/origin/master
remotes/origin/nnvm
remotes/origin/piiswrong-patch-1
remotes/origin/v0.9rc1

查看本地分支
~/mxnet$ git branch
* master

切换分支
$ git checkout -b v0.9rc1 origin/v0.9rc1
Branch v0.9rc1 set up to track remote branch v0.9rc1 from origin.
Switched to a new branch 'v0.9rc1'

这个时候再查看本地分支就多了一个
$ git branch
master
* v0.9rc1

切换回master分支
git checkout master

删除本地分支
git branch -d 分支名

删除远程分支
git push origin --delete 分支名

清空远程仓库

#递归删除文件夹下所有文件
git rm xxx(xxx表文件名) -r ( -r 当给出主目录名时允许递归删除)
#删除单个文件
git rm readme.md

删除之后,本地目录下已经删除的文件夹就不再存在了,为了能将远程仓库的相应文件也删除掉,我们要把这次操作提交到上去
git commit -m "remove all file"
git push origin master

Tim
夏
小码哥