码迷,mamicode.com
首页 > 其他好文 > 详细

git使用(二)

时间:2019-08-19 12:37:21      阅读:104      评论:0      收藏:0      [点我收藏+]

标签:email   解决方案   分支   app   地方   切换   checkout   作用   跳转   

git 从分支上创建一个分支

  1. 先克隆一个项目
    git clone git的ssh链接
  2. 查看当前分支
    git status
  3. 切换到父分支中
    git checkout 分支名
  4. 拉取最新的代码
    git pull origin 分支名字
  5. 创建新的分支
    git checkout -b 新分支的名字
  6. 将分支推送到线上
    git push origin 分支名字

分支相关

  1. 查看分支:
    git branch
  2. 创建分支:
    git branch <name>
  3. 切换分支:
    git checkout <name>
  4. 创建加切换分支:
    git checkout -b <name>
  5. 合并某分支到当前分支:
    git merge <name>
  6. 关联远程分支:
    git pull origin <name>
  7. 删除分支:
    git branch -d <name>
  8. 删除远程分支:
    git push origin --delete <name>

git删除指定分支

  1. 在本地建立文件夹
  2. 将该分支clone下来
  3. git clone -b 该分支名 地址
  4. git branch -a (查看远端分支)
  5. git checkout -b 别的分支
  6. git branch -D 要删除的分支
  7. git push origin --delete 要 要删除的分支
  8. 完成

gitlab创建新项目

  1. 登录gitlab网站自己找到新建项目
  2. 在git bash的窗口输入ssh-keygen
  3. 一般在c盘的用户文件夹下会出现一个.ssh文件 复制文件中的id_rsa.pub内容
  4. 在git中选择settings 将复制的内容配置进去,点击add keys
  5. 在git Bash窗口设置git的用户名和邮箱 git config --global user.name 你的名字 git config --global use.email 你的邮箱
  6. 进入到本地项目中,右键此处进入git Bash
    输入git init初始化仓库
  7. 将本地仓库和远程仓库建立连接 git remote add origin git@code.choerodon.com.cn:25371/sss.git
  8. 将文件加入到缓冲区

    git add .
    (这个点等于当前路径下的所有文件,不能省略)
  9. 将文件提交到版本库
    git commit -m "提交描述"(这个-m后面的东西建议不要省略有利与回滚的时候能判断是第几次提交)
  10. 将本地的master分支推送到origin主机
    git push -u origin master

远程仓库中项目拉取

  1. 拉取代码
    git clone git地址
    -- 默认拉取得是master分支

  2. 若需要切换分支
    使用git branch -a
    会出现分支列表
    直接切换到对应的分支

    git checkout origin/experimental


常见错误

出现The file will have its original line endings in your working directory错误

输入git config core.autocrlf false

git push报HTTP Basic: Access denied 错误

原因:本地git配置的用户名、密码与gitlabs上注册的用户名、密码不一致 解决方案: 如果账号密码有变动 用这个命令 git config –system –unset credential.helper 重新输入账号密码 应该就能解决了

git报错:‘fatal:remote origin already exists‘怎么处理

描述:可能会在上述步骤第7步之后出现,原因是重复建立远程仓库连接 解决方案:

  1. 先删除
    git remote rm origin
  2. 再执行添加
    (上述第7步)

Error:(1, 0)Your project path contains non-ASCII characters. This will most likely causethe build to fail on Windows. Please move your project to a differentdirectory.

描述:编码错误 大概率是保存路径下出现了中文


git基本指令

  1. git status
    这个指令可以让我们时刻掌握仓库当前的状态,比如文件的修改状态
  2. git diff
    如果已经记不清上次修改的内容,这个时候需要用git diff命令
  3. git log
    如果提交了多次文件,查看历史记录,这个时候便可以使用这个指令 来分别查看各个版本有何差别,注 意这个地方将会在命令行出现各种描述,其中包含文件唯一的commit id值,作者,版本创建时间,版本描述.(所以这里要强调一点,使用commit的时候,一定要添加描述,以免日后忘记)
    如果嫌弃输出信息太多,可以试试加上 --pretty=oneline
  4. git reset --hard HEAD^
    commit id都是唯一值,在git中,用head来标识当前版本,HEAD来表示上一个版本,HEAD^表示上上个版本.但是如果回退到上个版本之后,最新的一个版本在使用git log打印的时候发现,最新的版本好已经不见了 如果想要回到最新的某个版本这个时候commit id的作用便体现出来了,使用git rest --hard [commit id]便能跳转到最新的版本
  5. git reflog
    如果回退了版本,也不知道最新的版本的commit id,这个时候就可以使用git reflog 它记录了每一次的git指令

管理修改的概念

第一次修改 -> git add -> 第二次修改 -> git commit

当出现这种情况的时候,第一次使用git add之后,工作区第一次修改之后被放入暂存区,但是工作区第二次修改并没有放入暂存区,所以git commit只负责把暂存区的修改提交了,也就是第一次修改被提交了,第二次修改没有提交.

使用git diff HEAD -- readme.txt命令可以查看工作区和版本库里面最新版本的区别. 如果是 第一次修改 -> git add -> 第二次修改 -> git add -> git commit

这种操作就相当与把两次修改合并后一块提交了. 总结:每次修改,如果不用git add到暂存区,那就不会加到commit中了.


撤销修改

  1. git checkout -- [filename]
    如果在工作区修改了一堆东西,这个时候一点一点找又不方便找出来,这时候使用该指令便可把工作区全部撤销,
  • 这个时候有两种情况:
  • 一种是修改之后没有放到暂存区,这个时候撤销便是回到了和版本库一模一样的状态
  • 一种是已经添加到暂存区后,又做了修改,这个时候撤销是回到暂存区的状态
    ps:总之,这个指令就是让文件回到最近一次git commit 或者git add的状态.
  1. git reset HEAD [filename]

    如果修改过内容后已经添加到暂存区了,暂时还没有提交,这个时候使用这个指令便可以把暂存区修改撤销掉,重新放回工作区

如果已经提交到版本库,可以使用上文提到的版本回退,如果你甚至提交到了远程仓库,恭喜你!你没了!


删除文件

通常情况直接使用rm [filename]从资源管理器上直接删除文件了,删除过文件之后git status就能之间看出来文件有哪些差别 现在又两个情况

  1. 确实要从版本库中删除该文件
    那就用命令git rm删除,并且git commit现在文件就从版本库中被删除了
  2. 如果删除错了,直接使用上文提到的git checkout -- [filename]便可以用版本库里面的版本替换工作区的版本,无论是删除还是修改,都可以一键修改

额外知识

关联远程仓库之后,origin就是远程仓库的名字,这是git的默认叫法,当把本地库的内容推送到远程的时候,用git push命令,实际上是把当前分支master推送到远程仓库,如果使用-u这个参数,还会把本地的master分支和远程的master关联起来,以后推送和拉取就可以简化命令

从现在起 只要做了本地做了提交,就可以通过命令: git push origin master把本地master分支的最新修改推送到github

通过ssh支持的原生git协议速度最快

git使用(二)

标签:email   解决方案   分支   app   地方   切换   checkout   作用   跳转   

原文地址:https://www.cnblogs.com/blinktooo/p/11376299.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!