git|git 终端命令

cd ~/文件夹 : 进到跟录下中的某个文件夹

Git add:将git代码添加到暂存区git remote -v: 查看仓库链接remote rm origin:删除仓库链接git remote add origin [url]: 添加新的仓库链接git mv old-filename new-filename:移动或者重命名文件git rm filename:用git的方法删除文件git status:查看从上次提交以后的文件的状态git diff :查看从上次提交以来,本地代码改动的具体情况git commit -m“”:将代码提交到本地仓库,后面是说明git commit —-amend:觉得刚才提交的说明不够好,用这个修改。git commit -m"" --amendgit push:将本地仓库提交到远程仓库git pull:将别人推送到远程仓库的代码,拉到自己的本地仓库git log:参看修改记录等git show:显示具体的代码改动情况git branch:列出所有的分支名git branch 分支名:新建分支git branch -d 分支名:删除分支,注意大小写git checkout 文件名:恢复已修改的文件到上一次提交的状态,未提交的情况下git checkout -b dev : 创建dev新分支 git checkout 分支名:切换到分支名git merge --no-ff sourceBranch//把sourceBranch的修改merge到targetBranch。注意:建议merge的时候总是用 --no-ff 选项 git status//保证现在workspace是干净的 git push//push到远程,如果远程有新的修改,先做一下git pullgit revert HEAD:还原最近一次提交的修改,在提交的情况下git revert 版本号:还原到该版本git stash:先将未提交的修改暂存起来,接着清楚所有未提交的修改git log -p :查看提交的具体内容

git本地分支回退:
1. 先用下面命令找到要回退的版本的commit id: git reflog 2. 接着回退版本: git reset --hard Obfafd(0bfafd就是你要回退的版本的commit id的前面几位)

git远程分支回退:
如果你的错误提交已经推送到自己的远程分支了,那么就需要回滚远程分支了: 1. 首先要回退本地分支: a. 用git reflog 或者去sourceTree里面获取值,例如:780ee16; b. git reset --hard Obfafd 或者用sourceTree Reset操作 2. 紧接着强制推送到远程分支: git push -f 注意:本地分支回滚后,版本将落后远程分支,必须使用强制推送覆盖远程分支,否则无法推送到远程分支。

两个仓库源 【git|git 终端命令】方式一.
找到项目中隐藏的.git文件,打开,添加源:
我们需要修改它,让它有除了orgin之外的另外一个远程仓库
可以取名为“mirror”即镜像仓库,我就把GitHub做为主要远程仓库,git@oschina做为国内镜像仓库
于是修改后的config文件如下所示:
[core] repositoryformatversion = 0 filemode = false bare = false logallrefupdates = true symlinks = false ignorecase = true [remote "origin"] url = git@github.com:hwangfantasy/beautify.git fetch = +refs/heads/*:refs/remotes/origin/* [remote "mirror"] url = git@git.oschina.net:hwangfantasy/beautify.git fetch = +refs/heads/*:refs/remotes/mirror/* [branch "master"] remote = origin remote = mirror merge = refs/heads/master [gui] wmstate = normal geometry = 841x483+156+156 189 218

pull操作
使用以下命令,可以分别从两个远程仓库pull:git pull origin master git pull mirror master

push操作
使用以下命令,可以分别push到两个远程仓库:git push origin master git push mirror master

git remote -v:显示当前所有远程库的详细信息
方式二.
  1. 参考git服务器迁移里面的,针对已有仓库的本地项目,直接添加一个仓库源, 源的名字不要和已有的重复;
  2. 查看源 git remote -v;
  3. 若已添加成功,则:git push -u mirror --all ;其中-u是在此时把mirror这个新仓库源作为默认仓库源,本地的分支也就是这个源为默认,git push 也就是默认这个源;用sublime打开项目中的.git里面的config,查看配置,里面应该有了mirror的信息。
  4. 源的修改名字等其他操作,也可以参考git服务器迁移那文章。
  5. 修改代码,push的时候,用sourcetree可以方便的选择推送的哪个源;若本地分支有一份dev,那么dev只能跟踪一个源,在sourcetree里可以切换跟踪的源,切换后,才会显示和此源的联系,是否超前了或者落后。

    推荐阅读