Git使用归纳

1. Git使用

  安装git客户
  git客户客户端:
  TortoiseGit安装详解:https://www.cnblogs.com/xinlj/p/5978730.html
  命令行:Git Bash Here
  插件: android studio|eclispe

2.git结构:

工作区 : 本地操作的代码
  暂存区(add)   :  执行add 以后加入暂缓区
  本地库(commit):  存储每一个版本,在本地,比svn的优点

 3. 设置

 1.git init :初始化本地库,创建 .git文件
  2. 设置签名:用于区分不同人提交代码,和代码托管账号、密码没有任何关系
  本地有效:
  git config user.name denganzhi
  git config user.email [email protected]
  保存路径: cat ./git/config
  全局有效:
  git config --global user.name denganzhi
  git config --global user.email [email protected]
  保存路径: cat ~/.gitconfig

4. 使用

  git status  : 查看本地代码状态  [  红色:新建文件、已修改文件 ]
  git add * :  红色边绿色    【  后悔了撤回来git rm --cached bb.txt 】
  git commit aa.txt -m "第一次提交"

5. Git版本控制回退

git log: 
git log --oneline:git log多屏显示,用oneline控制
git reflog: {} 显示移动到当前版本想要移动次数
    git操作本质:
    git管理每一个版本有一个指针, 可以基于Head指针 前进后退,切换对应指针即可
    git reset --hard fbf1e13【索引值】
    用途: 删除文件找回


参数含义:
--soft:移动本地库HEAD指针
--mixed: 移动本地库,重置暂存区
--hard: 移动本地库,重置暂存区,工作区
 git diff aa.txt :   工作区和 本地区比较

6. Git分支管理:

 master分支默认是
  git branch : 查看本地分支
  git branch haiwaikaadas: 创建分支
  git checkout haiwaikaadas: 切换分支  
 分支合并:
  git checkout master :切换Master分支
  git merge haiwaikaadas:  haiwaikaadas分支合并到Master

  合并分支冲突:
  冲突产生条件:
  分支A修改了 内容A部分,master分支A提交
  分支B修改了 内容A部分,branchA分支B提交
  branchA合并到master分支上
  git merge以后,产生冲突文件,编辑冲突文件add,然后commit即可

7. Hash算法类型:

 md5:  输出结果是16个字节
  sha1:   输出结果20个字节
  crc32:   输出结果4个字节
数据一点不一样,Hash值不一样

 SVN原理:每一个版本保存增量数据
 Git原理: 给每一个版本拍一个快照,每一个文件有hash,比较,指针指向差异文件
 
  widnows密码保存路径:
  控制面板\用户帐户\凭据管理器,删除以后,提交代码要重新输入gitlab账户密码

 9. Git远程协作 

git remote add origin https://github.com/dreamsdeng110/githubinfo.git:  添加别名给 origin
   got remote -v
   git push -u origin master: 提交内容
   git clone https://github.com/dreamsdeng110/githubinfo.git:下载内容
   git pull origin master: 从服务器拉取内容
   上面的pull相当于下面的:
   git fetch origin/master
   git merge origin/master
   
  远程库冲突:
   A 提交修改了
   B 修改了同样内容
   B 首先 pull 拉取冲突内容,冲突文件产生,编辑解决冲突
   B git add * :标记为解决,add
   B git commit -m "解决冲突"
   B git pull origin master
   B git push origin master

同一个团队合作,邀请其他成员加入

  10. 跨团队协作基于github

 A用户首先 访问主用户github项目页面  fork 一份代码,拉取到本地, 修改代码提交,有自己的分支了在自己的库中
    然后Pull request,提交请求
  主用户: 在线审核代码
  在线合并代码

  11. 基于ssh登录github

cd ~   :进入家目录
  ssh-keygen -t rsa -C [email protected]: 生产公钥
   cd .ssh/
cat id_rsa.pub  拷贝内容公钥内容,把它粘贴到github上,可能出现问题,换行在粘贴
  
  git remote add origin_ssh [email protected]:dreamsdeng110/githubinfo.git: 配置ssh以后,把公钥添加到origin_ssh上
  git remote -v :  查看变量
  git push origin_ssh master:推送内容通过公钥

  12.Git分支理论使用:

B程序员分支B,在B分支上修改,推送到远程
 A项目经理,拉取B 分支, 切换到B分支 ,
 审核代码,合并到master分支
 开发中,应该把Master分支拉下来以后,在本地创建一个用于开发的分支,在开发的时候动开发分支就行了,然后把它合并到master分支,
 太麻烦了这样,实际开发中直接操作Master分支即可

  13. Centos7安装 安装GitLib

 cat /etc/sysconfig/network-scripts/ifcfg-ens33 
   service network restart :保证 centos能够上网

   GitLib官网:https://about.gitlab.com/
   
   https://about.gitlab.com/install/#centos-7: centos-7官网安装路径
    gitlab-ce:  社区版 
    gitlab-ee:  企业版
    
   安装以后启动服务,IP:155端口即可访问github类似网页
 

发布了99 篇原创文章 · 获赞 101 · 访问量 13万+

猜你喜欢

转载自blog.csdn.net/dreams_deng/article/details/105018209