工作中常用的Repo和Git的一些操作[随时更新]
本文记录一些常用的repo 和 git操作。对于repo下载代码,使用的时候直接复制粘贴代码更改关键位置就可以,并不做详细介绍。对于git 有些时候记不起某些操作指令回头看下本文即可,对指令也并不做详细介绍。
一、repo
从公司服务器下载代码1、 首先初始化下载代码环境,也就是下载代码的Manifest文件和.git文件
repo init -u git://[代码所在的服务器路径] -b 【代码所在的分支】
2、下载代码(同步代码)到本地
repo sync 或者 repo sync -j4 (这里的j4是指下载代码的线程,后边可以j4或j8,j8比j4下载的快,但是如果还要做其他事情,那么j8电脑会很卡)
或者 repo sync --no tag(这样下载的代码会少一些,下载下来的代码没有无关紧要的TAG)
二、Git
对下载下来的代码进行一些操作处理。git status
查看当前git目录下的有改动的文件。
git diff
查看当前git 目录下有改动文件的改动的地方,只会显示改动的地方及上下涉及的代码,并不会显示整片代码
git add 或 git add xxx 或 git add .
将改动后的文件添加到缓冲区。
git rm
如果删除了某个文件需要使用git rm 来提交到缓冲区
git commit
提交缓冲区内的文件到本地仓库,并生成commit号和log。
git commit --amend
修改上次提交的提交信息comment
git log
显示本地仓库的所有提交。包括远程服务器的commit和本地刚刚或自己所做修改的commit。
git reset 【commitID】 --hard
当发现提交不对不想要时候,或者想要回到某个提交所在的环境的时候,可以先使用git log查看
所有本地仓库的所有提交的commitID ,然后使用该指令回到这个提交所处的环境
git blame xxxxx
可以查看某个文件每个地方被修改的信息,从而查看是谁或为什么这样修改
git checkout
个人感觉这个很重要,因为很多时候都会用到。切换分支,比如某段代码的revision是A,而我们当前的branch是B,如果想要往A上提交代码从而来修改B,那么就可以使用git checkout A,那么便可以切换到A,使用push就可以push到A上。从而不需要下载A的代码。
git push
这个用法貌似每家公司都会有点不同,但是核心是一样的,都是将本地仓库的最新提交推送到远程服务器进行合并。
git fetch
别人在远程服务器有一个提交自己本地没有,或者在其他分支有一个提交想要拿到自己这个分支上使用,那么便可以使用git fetch
本文原创,转载请表明出处,谢谢!