一、远程操作
1、克隆
git clone <url>
2、提交
git add :添加
git commit -m “修改信息” :提交到本地
git branch -a :查看所有分支,红色的是远程分支
git fetch :获取远程分支
git diff HEAD FETCH_HEAD :查看本地和远程的区别
git merge origin/master :合并
git push -u origin master :将本地的master分支推送到origin主机
使用 git fetch和git merge代替git pull
3、更新远程仓库代码到本地
参考博客:https://blog.csdn.net/qq_36178641/article/details/79957885
1)查看远程仓库
git remote -v
origin git://anongit.freedesktop.org/gstreamer/gst-docs (fetch)
origin git://anongit.freedesktop.org/gstreamer/gst-docs (push)
2)从远程获取最新版本到本地
使用如下命令可以在本地新建一个temp分支,并将远程origin仓库的master分支代码下载到本地temp分支
$ git fetch origin master:temp
remote: Counting objects: 810, done.
remote: Compressing objects: 100% (780/780), done.
remote: Total 810 (delta 559), reused 0 (delta 0)
Receiving objects: 100% (810/810), 314.05 KiB | 122.00 KiB/s, done.
Resolving deltas: 100% (559/559), completed with 132 local objects.
From git://anongit.freedesktop.org/gstreamer/gst-docs
* [new branch] master -> temp
82dd7c3..daa4d32 master -> origin/master
* [new tag] 1.16.0 -> 1.16.0
3)比较本地仓库与下载的temp分支
$ git diff temp
diff --git a/.gitignore b/.gitignore
index e013a1b..978ee3a 100644
--- a/.gitignore
+++ b/.gitignore
@@ -26,5 +26,3 @@ gst_sdk
xcuserdata
/plugins-introspection/cache/
/hotdoc_env/
-*.html
-*~
4)合并temp分支到本地的master分支
对比区别之后,如果觉得没有问题,可以使用如下命令进行代码合并:
$ git merge temp
Updating 82dd7c3..daa4d32
Fast-forward
.gitignore | 2 +
.gitlab-ci.yml | 1 +
.gitmodules | 3 -
Makefile | 81 -
README.md | 81 +-
examples/bus_example.c | 9 +-
examples/snippets.c | 9 +-
5)删除temp分支
如果temp分支不想要保留,可以使用如下命令删除该分支:
$ git branch -d temp
Deleted branch temp (was daa4d32).
二、导出干净的代码(不含.git目录)
git archive --format zip --output “…/master.zip” master -0
三、git图形工具
查看修改的图形工具:
gitk //图形风格
tig // vim风格