初始化一个Git仓库,使用git init
命令。
添加文件到Git仓库,分两步:
- 使用命令
git add <file>
,注意,可反复多次使用,添加多个文件; - 使用命令
git commit -m <message>
,完成。
版本回退
HEAD
指向的版本就是当前版本,因此,Git允许我们在版本的历史之间穿梭,使用命令git reset --hard commit_id
。穿梭前,用
git log
可以查看提交历史,以便确定要回退到哪个版本。要重返未来,用
git reflog
查看命令历史,以便确定要回到未来的哪个版本。
撤销修改
场景1:当你改乱了工作区某个文件的内容,想直接丢弃工作区的修改时,用命令git checkout -- file
。
场景2:当你不但改乱了工作区某个文件的内容,还添加到了暂存区时,想丢弃修改,分两步,第一步用命令git reset HEAD <file>
,就回到了场景1,第二步按场景1操作。
删除
命令git rm
用于删除一个文件。如果一个文件已经被提交到版本库,那么你永远不用担心误删,但是要小心,你只能恢复文件到最新版本,你会丢失最近一次提交后你修改的内容。
远程仓库(GitHub)
要关联一个远程库,使用命令git remote add origin git@server-name:path/repo-name.git
;
关联后,使用命令git push -u origin master
第一次推送master分支的所有内容;
此后,每次本地提交后,只要有必要,就可以使用命令git push origin master
推送最新修改;
克隆远程仓库
要克隆一个仓库,首先必须知道仓库的地址,然后使用git clone
命令克隆。
关联远程仓库(GitHub)实例:
1、(先进入项目文件夹)通过命令 git init 把这个目录变成git可以管理的仓库
git init
2、把文件添加到版本库中,使用命令 git add .添加到暂存区里面去,不要忘记后面的小数点“.”,意为添加文件夹下的所有文件
git add .
3、用命令 git commit告诉Git,把文件提交到仓库。引号内为提交说明
git commit -m 'first commit'
4、关联到远程库
git remote add origin 你的远程库地址
如:
git remote add origin https://github.com/cade8800/ionic-demo.git
5、获取远程库与本地同步合并(如果远程库不为空必须做这一步,否则后面的提交会失败)
git pull --rebase origin master
6、把本地库的内容推送到远程,使用 git push命令,实际上是把当前分支master推送到远程。执行此命令后会要求输入用户名、密码,验证通过后即开始上传。
git push -u origin master
*、状态查询命令
git status
如果从github上 clone下来的项目,重新上传到自己的github项目中
本地仓库关联多个远程仓库
1:使用git remote -v
查看本地库已经关联的Gerrit远程仓库
$ git remote -v
origin ssh://yechy@192.168.1.xxx:xxxx/OTT (fetch)
origin ssh://yechy@192.168.1.xxx:xxxx/OTT (push)
2. 使用git remote add
命令
在github远程仓库的基础上关联码云仓库
git remote add gitee git@gitlab:OTT/GxLive_APK.git(ssh地址)
关于git pull
如果当前分支有关联的远程分支,可用git branch -vv查看追踪关系 $ git branch -vv
* dev 27437bf [origin/dev] <Apk> Release v1.3.20.
显示本地的dev分支追踪的是origin仓库的dev分支,直接调用git pull会拉origin仓库dev分支的代码。
本地分支关联多个远程分支之间切换
git branch --set-upstream 本地分支名称 origin/远程分支名称 –set-upstream-to 在新版本git中已经替代了 –set-upstream, 并且后面跟随的两个参数要对调一下,新片git的命令如下: git branch --set-upstream-to origin(下图示例github:origin,码云:gitee)/远程分支名称 本地分支名称
远程分支在前,本地分支在后。
测试示例
如上图表示本地仓库在github(origin)和码云(gitee)之间分支切换