Git学习笔记

Git是一个分布式的代码管理和版本控制软件,我看的资料都说比SVN强,那我就学一下,根据我自己的理解来说一下这个东西在公司里要怎么用.

1.公司会给你分配工作用机或者你自己带笔记本

2.公司应该都搭建好远程仓库了,所以我需要将远程仓库clone到本地

3.一个远程仓库地址按照我的理解应该就是一个项目,所以我要用idea对这个项目进行导入

4.使用idea插件什么的,把一些IDE自己产生的文件或目录排除掉

5.创建自己的分支,开始代码编写

6.进行代码的提交(这里提交应该不会遇到任何问题,因为是自己往自己的本地仓库提交)

7.进行分支合并

8.将改动推送到远程仓库,这里可能会出现冲突

    冲突出现的原因是多个人在本地仓库对同一个资源进行修改并提交

9.解决冲突(将远程仓库的文件拿下来,从本地进行冲突合并)

10.重新推送

# 查看工作区和版本库里面最新版本的区别

git diff HEAD -- readme.txt

# 从 暂存区 or 版本库 恢复指定文件(暂存区优先,删了的也可以恢复,只要暂存区或者版本库有副本就可以)
git checkout -- file
# 将指定文件从暂存区里撤销(删除)
git reset HEAD file
# 将文件添加到暂存区
git add <file>
# 将文件提交到本地仓库
git commit -m "description"
# 使本地仓库关联远程仓库(适用于先有本地仓库,再有远程仓库)
git remote add origin git@github.com:michaelliao/learngit.git
# 更换本地仓库关联的远程仓库
git remote set-url origin git@github.com:itliuwei/test.git
# 将本地master分支的内容推送到远程仓库
git push
# 将本地master分支的内容推送到远程仓库,并且合并
git push -u origin master
# 使用powershell创建自己的SSH秘钥
ssh-keygen -t rsa -C "这里写你GitHub注册邮箱"
# 将远程仓库同步到本地(适用于先有远程仓库)
git clone git@github.com:itliuwei/My_Repository_1.git
# 创建并切换到指定分支
git checkout -b dev
# 创建指定分支
git branch dev
# 切换指定分支
git checkout dev
# 查看当前分支
git branch
# 合并某分支到当前分支
git merge dev
# 不使用快速合并,会生成一个commit,所以要写上提交信息
git merge --no-ff -m "merge with no-ff" dev
# 用带参数的git log也可以看到分支的合并情况
git log --graph --pretty=oneline --abbrev-commit
# 可以看到分支合并图
git log --graph
# 删除分支
git branch -d feature1
# 强制删除没有合并的分支
git branch -D feature-vulcan
# 将当前分支的任务藏起来
git stash
# 查看当前分支所有的隐藏任务
git stash list
# 恢复某个隐藏任务
git stash apply
# 删除某个隐藏任务的存储点
git stash drop
# 恢复隐藏任务并删除存储点
git stash pop
# 查看远程库的信息
git remote [-v]
# 推送分支(后面可以指定分支)
git push origin master

多人协作的工作模式通常是这样:
1.首先,可以试图用git push origin branch-name推送自己的修改;
2.如果推送失败,则因为远程分支比你的本地更新,需要先用git pull试图合并;
3.如果合并有冲突,则解决冲突,并在本地提交;
4.没有冲突或者解决掉冲突后,再用git push origin branch-name推送就能成功!

    如果git pull提示“no tracking information”,则说明本地分支和远程分支的链接关系没有创建,用命令

git branch --set-upstream branch-name origin/branch-name。

这就是多人协作的工作模式,一旦熟悉了,就非常简单。

基于java开发的菜鸟驿站快递管理系统(客户端+服务端)+源码,适合毕业设计、课程设计、项目开发。项目源码已经过严格测试,可以放心参考并在此基础上延申使用 基于java开发的菜鸟驿站快递管理系统(客户端+服务端)+源码,适合毕业设计、课程设计、项目开发。项目源码已经过严格测试,可以放心参考并在此基础上延申使用~ 基于java开发的菜鸟驿站快递管理系统(客户端+服务端)+源码,适合毕业设计、课程设计、项目开发。项目源码已经过严格测试,可以放心参考并在此基础上延申使用 基于java开发的菜鸟驿站快递管理系统(客户端+服务端)+源码,适合毕业设计、课程设计、项目开发。项目源码已经过严格测试,可以放心参考并在此基础上延申使用 基于java开发的菜鸟驿站快递管理系统(客户端+服务端)+源码,适合毕业设计、课程设计、项目开发。项目源码已经过严格测试,可以放心参考并在此基础上延申使用 基于java开发的菜鸟驿站快递管理系统(客户端+服务端)+源码,适合毕业设计、课程设计、项目开发。项目源码已经过严格测试,可以放心参考并在此基础上延申使用 基于java开发的菜鸟驿站快递管理系统(客户端+服务端)+源码,适合毕业设计、课程设计、项目开发。项目源码已经过严格测试,可以放心参考并在此基础上延申使用
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值