GIT 常用基本命令分享

  上次说到花了一点功夫搭建了局域网的git服务器,中间大概一个月的时间摸索了一些知识,不说精通git,至少基本的操作都会了,也能完成前领导的任务。新环境不再使用git,使用svn来进行代码管控(差点没哭出声刚学完git)。现在就是抓紧学习一点svn的基本操作然后开始干活。git有关的记忆赶紧分享出来,不然时间久了就忘记干净了。

  以下是正文:

  主要会从被安排的任务入手解读我所掌握的git常用命令:

 1.最基本的克隆和推送

  很基础的操作。我个人是喜欢用命令,不是很习惯用那个tortoise(乌龟)。

  找到一处地方右键打开git bash here 或者直接cmd进去想克隆的地址都可以:

  git clone  url   其中url是克隆的地址(一般以  .git 结尾)

  需要说明两点 1.默认只会克隆master分支,其他的分支需要自己手动pull或者什么其他的方式。2.可以添加参数 比如之前的博客中有提到过的 --recursive 就是强制递归clone所有的子文件夹(不知道这种说法对不对)。

  同理推送也是很基础的操作。 git push origin master 这个命令就是向远程仓库origin 推送 master 分支(也就是主线分支) 也可以加参数 比如 -u (这个解释起来很费劲,反正就是和一个什么东西关联起来,比如第一次push的时候使用了 git push -u origin master 那么后续之需要使用 git push 就相当于输入了 git push origin master) 还可以加 -f (强制推送,不建议用,一般人家的服务器也不会允许普通用户有这么匪夷所思的操作)

  注意:origin只是一个名字,只不过大家都默认这个叫远程仓库

  git remote add + 名字 + url

  这条命令运行的时候才会设定的远程仓库的名字

  同理push的时候也不一定要push master分支,也可以是别的分支名字 那样就是把别的分支推送到了远程仓库  所以push的命令其实是 git push + 远程仓库名字 +分支名字

2. 添加/删除远程仓库

  在git本地仓库里面有个隐藏的 .git 文件夹 里面有个config文件 打开它可以看到一些信息。

  如果是本地创建的新的git仓库的话,应该有用的信息比较少。如果是克隆下来的仓库,里面肯定有一个名字 等于 一个url地址。那个就是远程仓库的信息。

  假如想把别人的东西拿过来,推送到自己的服务器里面,还想保留人家每次提交的commit信息的话,只需要远程仓库地址换成自己的然后推送就可以了(记得自己服务器那边搞个空的仓库,不然推送会有问题)

  可以手动修改config文件的url 也可以使用命令 

  删除远程仓库命令  git  remote remove +远程仓库名字(一般是origin)

  添加远程仓库命令  git  remote add +远程仓库名字(一般是origin)+ url

  例: git remote remove origin

    git remote add origin ssh://xxxxxxxxxxxxxxxxxxxxxx

3.分支相关操作

  查看所有分支: git branch -a  可以查看所有分支, 其中remote/origin开头的是远程服务器的分支,想下载的话可以使用 git pull +远程仓库名字+分支名字 进行下载。

  直接使用git branch 可以查看本地的所有分支 并且 *会停留在当前分支上。

  创建分支:git branch +分支名字

  切换当前分支: git switch +分支名字      或者

          git checkout  + 分支名字

  创建并切换到该分支: git checkout -b +分支名字      或者

             git switch -c +分支名字

  删除分支:   git branch -d +分支名字

  删除远程仓库的分支:首先要使用 git switch 或者git checkout 命令切换到别的分支去,然后使用命令: git push +远程仓库名   --delete  +分支名  

  例如: git push origin --delete new_branch

  可能会提示输入账号密码

4.分支的一些其他操作

  创建一个空白分支。 使用上面创建分支的命令创建的分支是基于当前分支的(可以理解为当前分支的一个副本分支),使用git log 可以查看提交的信息和版本。创建空白分支的操作如下:

  git checkout -- orphan +分支名字

  如果没有问题就继续往下走,如果报问题就执行 git clean -d -fx (清除除了 .git文件夹以外的所有文件) 然后重新 执行  git checkout -- orphan +分支名字 创建空白分支

  git rm -rf .  (清除所有git文件历史,为了空白分支,文件不用担心丢失可以通过回退版本找回来的)

  git commit -m ”提交信息“

  此时不能提交到远程,因为是空的啥都没有,随便添加点东西 然后 git add . 然后git commit -m "xxx" 就可以提交到仓库了

5.更新

  git pull +远程仓库名字+分支名字

  相比较于 git clone ,这种方法会只下载服务器相比较与本地新的部分,省时省力(clone是全盘下载)。

6.合并分支

  git merge +分支名字

  意识是合并目标分支到当前分支(所以提前切换好当前所在分支)

7 回退版本

  这是我最喜欢的功能之一,当出了问题没法解决的时候,我一般直接回退版本慢慢来

  每次commit 之后会有一个记录留在本地,使用git log 可以查看,如下图:

红框就是一次提交的记录,黄框里面存着的是这次提交的版本号(最低输入前7位就可以了,没必要全部输入)

回退版本的命令是    git reset --hard  +版本号(最低输入前7位就可以了,没必要全部输入)

  使用之后可以把当前状态还原为当时提交版本的时候的状态。

 

 -------------------------------------下次简单说说遇到异常了怎么处理,pull、push、merge、都有可能出异常,尤其是push---------------------------------------------------

 that is all

posted @ 2020-12-02 20:24  zeddd  阅读(181)  评论(1编辑  收藏  举报