git操作

克隆代码,准备工作

1,git clone 地址
2,git branch  当前分支是master
3,git branch -r 列出远程所有分支
4,git branch 列出本地分支
5,git checkout develop  切换到开发分支
6,git branch -b lgy 在develop分之下,新建lgy分支,并且进入此分支

在lgy分支下面 进行开发

git status 查看当前状态

1,git add 添加到本地
2,git commit -m 'XXXXXX' 提交到本地
3,git push 此时会有提示
To push to the branch of the same name on the remote, use
    git push origin lgy

所以要使用

git push origin lgy 

然后就在远程分支上新建了lgy分支,此后就可以使用git push直接提交到远程lgy分支

切换到develop分支进行代码合并

git checkout develop

首先拉取最新代码

git pull

在develop分支下合并

git merge lgy  表示将lgy分支的代码合并到develop分支
git push 提交即可

切换到lgy分支与develop分支同步

因为每个小组的人员在各自的分支下进行开发的代码最终都提交到了develop分支,所以在在此开发的时候首先需要同步develop的代码,保持代码最新
所以需要将lgy分支与develop分支进行关联

git branch --set-upstream-to=origin/develop lgy

这样就将develop和lgy两个分支进行了关联
关联后在lgy本地分支下开发完想直接推到远程develop分支怎么做?
git push origin lgy:develop
注:冒号不能少

在lgy分支下同步develop分支的代码

git pull origin develop

分支重命名

本地分支重命名
git branch -m oldbranchname newbranchname
远程分支重命名

如果修改远程分支,只需要将本地分支重命名为新分支名称,然后删除远程分支,再把本地分支上传就可以了

远程删除分支,同步本地

我们在远程仓库直接查看项目,可以清楚的看到有多少分支,分别是哪些分支。当然我们可以通过在终端敲命令来进行删除分支,但是如果直接在分支管理后台手动删除了分支,如何同步到本地呢?
举个例子:
远程有分支develop,develop-1,develop-2。我们在拉下项目的时候,同时分支也都会同步到本地。develop-1和develop-2我们后来决定不用了,所以就在远程我们 直接手动删除了分支。切到本地终端以后我们使用git fetch 发现没有作用,还是有远程的分支。此时需要:

git remote show origin

这个命令会列出本地和远程分支的关系,出现 stale (use 'git remote prune' to remove)的这些分支说明远程都不存在了。然后按照建议来敲命令:

git remote prune

发现出错了,错误如下:

usage: git remote prune [] 
 -n, --dry-run         dry run

后来查出来原来是没有加origin的缘故,这样才可以:

git remote prune origin 

删除分支命令

假设我要在dev20180927分支下删除dev20181018分支
1 先切换到别的分支: git checkout dev20180927

2 删除本地分支: git branch -d dev20181018

3 如果删除不了可以强制删除,git branch -D dev20181018

4 有必要的情况下,删除远程分支:git push origin --delete dev20181018

版本回退

针对已经commit后的版本进行回退,我们都知道在commit代码以后会生成一串数字来标记提交的版本。那么回退到上一个版本的命令如下:

git reset --hard HEAD^

如果是恢复到前两个版本,那么在HEAD后面再添加一个^符号即可,如果想回退到前100个版本,那么需要这样写:

git reset --hard HEAD~100

如果我们想回退到某个确定的版本,可以Git log查看相应的版本号,然后使用如下命令回退

git reset --hard 版本号

你可能感兴趣的:(git操作)