git使用

开源  收藏
1 / 300

查看状态

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