Open huandie2012 opened 7 years ago
$ git clone <版本库的网址> <本地目录名>
$ git remote $ git remote -v //查看远程主机的网址 $ git clone -o jQuery https://github.com/jquery/jquery.git //自定义主机名 $ git remote show <主机名> //可以查看该主机的详细信息 $ git remote add <主机名> <网址> //添加远程主机 $ git remote rm <主机名> //删除远程主机 $ git remote rename <原主机名> <新主机名> //远程主机的改名
$ git fetch <远程主机名> //将某个远程主机的更新全部取回本地 $ git fetch <远程主机名> <分支名> //取回特定分支的更新 $ git branch -r/-a //查看远程分支,-a选项查看所有分支 $ git checkout //创建一个新的分支 $ git checkout -b newBrach origin/master //在origin/master的基础上,创建一个新分支 $ git merge/rebase origin/master //在本地分支上合并远程分支
$ git pull <远程主机名> <远程分支名>:<本地分支名> $ git pull origin next:master //取回origin主机的next分支,与本地的master分支合并
在某些场合,Git会自动在本地分支与远程分支之间,建立一种追踪关系(tracking)。比如,在git clone的时候,所有本地分支默认与远程主机的同名分支,建立追踪关系,也就是说,本地的master分支自动"追踪"origin/master分支。也可以手动建立追踪关系:
git branch --set-upstream master origin/next //指定master分支追踪origin/next分支
如果当前分支与远程分支存在追踪关系,git pull就可以省略远程分支名。
$ git pull -p //本地删除远程已经删除的分支
$ git push --force origin
上面命令使用--force选项,结果导致远程主机上更新的版本被覆盖。除非你很确定要这样做,否则应该尽量避免使用--force选项。 最后,git push不会推送标签(tag),除非使用--tags选项。
$ git push origin --tags
另外说明:(实践中遇到的问题) 如果在git pull拉去代码的时候产生冲突,出现问题报错的话,如下图所示: 可以执行:
git stash git pull git stash pop
希望保留生产服务器上所做的改动,仅仅并入新配置项。 在本地处理好冲突的地方再重新提交就可以了,可以使用git diff -w +文件名 来确认代码自动合并的情况,反过来,如果希望用代码库中的文件完全覆盖本地工作版本.。方法如下:
git reset //针对版本,如果想针对文件回退本地修改使用 git pull
(git是分布式版本控制系统,用于提交代码) Git常用命令可以参考下面的文章: http://justcoding.iteye.com/blog/1830388 http://www.ruanyifeng.com/blog/2014/06/git_remote.html
在某些场合,Git会自动在本地分支与远程分支之间,建立一种追踪关系(tracking)。比如,在git clone的时候,所有本地分支默认与远程主机的同名分支,建立追踪关系,也就是说,本地的master分支自动"追踪"origin/master分支。也可以手动建立追踪关系:
如果当前分支与远程分支存在追踪关系,git pull就可以省略远程分支名。
上面命令使用--force选项,结果导致远程主机上更新的版本被覆盖。除非你很确定要这样做,否则应该尽量避免使用--force选项。 最后,git push不会推送标签(tag),除非使用--tags选项。
另外说明:(实践中遇到的问题) 如果在git pull拉去代码的时候产生冲突,出现问题报错的话,如下图所示: 可以执行:
希望保留生产服务器上所做的改动,仅仅并入新配置项。 在本地处理好冲突的地方再重新提交就可以了,可以使用git diff -w +文件名 来确认代码自动合并的情况,反过来,如果希望用代码库中的文件完全覆盖本地工作版本.。方法如下:
(git是分布式版本控制系统,用于提交代码) Git常用命令可以参考下面的文章: http://justcoding.iteye.com/blog/1830388 http://www.ruanyifeng.com/blog/2014/06/git_remote.html