git的学习与使用

前言

如果你学会了,可以忽略本文章,或去项目经验地图寻找更多答案


设置用户名

//每次创建新仓库,都需要设置用户名
git config --global user.name "your name"
git config --global user.email "your email"//也可以在提交代码时输入用户名
git commit -m "提交" --author="joe_li <woai@163.com>"

基本命令

git init                    //在git bash 进入文件夹,运行命令,初始化仓库
git update-git-for-windows  //版本升级
git config --list           //查看用户信息配置


//远程仓库
git remote                  //查看远程仓库
git remote -v               //查看仓库具体仓库


//查看状态
git status
1.如果是nothing...,说明已经添加到了仓库区
2.如果是modified ProjectFile(绿色),说明只添加到了缓存区
3.如果是modified ProjectFile(红色),说明有文件修改了,但没有添加到任何区​
git diff 文件名             //查看具体改变的内容


//日志
git log                     //查看当前日志,详细
git log --oneline           //查看当前简略日志
git reflog                  //查看历史日志:(可以看到所有提交的版本号)


//删除恢复(放弃修改内容)
rm a.txt​                   //删除文件
git checkout -- a.txt      //删除文件再恢复文件:必须在没有重新commit之前

添加文件到本地仓库

1. 选择文件
选择单个文件,添加到缓存区:git add ./ProjectFile
添加多个文件:git add ./
       
2. 提交与说明,添加到本地仓库区: git commit -m "说明文字"
不加m是进入编辑器模式,按ESC + :q! 强制退出
一步完成,不需要两步:git commit --all -m "说明文字"

把代码提交到仓库

1.通过http上传:
git push https地址 master
(提交代码需要github的账号密码)

2.通过ssh方式上传:生成私钥
git push github-ssh地址 main(分支名称)

如果已经连接了远程仓库:
git push 即可

分支

应用场景:代码质量待检测,代码没有写完

分支:创建另外一条时间线,在另外的分支提交代码

1.创建分支:git branch name(和分离前的代码一样)2.查看分支:git branch (* 绿色代表当前)
​
3.切换分支:git checkout name

简写:创建并切换分支,git checkout -b name
​
4.合并分支:git merge name(分支名字)
​
5.删除分支:git branch -d name(在别的分支才能删除)6.手动修改:
两个分支都更新了,会造成合并失败,会把两个文件项目的内容合并在一起,
需要手动删除冲突的代码,然后再次提交

代码合并冲突

冲突的情况一:
开发人员A:从远程dev拉取一份代码,写完后,push到远程dev
开发人员B:同样从远程dev拉取了同一份代码,再push到dev就会报错
解决:先pull代码下来,然后合并代码,再次提交

冲突的情况二:
开发人员已经开发版本A,在dev分支
管理人员经过审核,又修改了一点内容,提交到远程main中
这时如果又在dev分支,版本A代码的基础上增加内容
管理人员再和已经提交的代码合并,就和原来的内容产生冲突

可以在管理工具查看,选择合并策略:
1.保留原有(已经提交的)
2.保留插入(最新添加的)
3.保留两者(两个都要)

版本(代码)回退

1.通过序号:(0代表最近一次,1代表上上一次,2代表上上上一次)
git reset --hard Head~02.通过版本号:(其他版本号隐藏,没有删除,可再次通过版本号切换)
   2.1:通过git log --oneline 显示版本号
   8dc8e50 这是第二个功能
   4e32733 这是第一次提交

   2.2:回退
   git reset --hard 4e32733  //第一个版本
   
3.如果又想回到回退前,可以通过版本号
3.1:通过git reflog 查看历史提交的版本号
git reset --hard 8dc8e50 //第二个版本

学习更多

项目经验地图

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值