GIT

GIT操作

参考廖雪峰GIT:https://www.liaoxuefeng.com/wiki/896043488029600/

0、GITHUB插件

  • 1、octotree:这个是可以查看GITHUB代码层级目录
  • 2、gitZip for GITHUB 可以下载GITHUB仓库的部分内容。
    • 在要下载的位置双击选中(左边会出现黑色对号),然后点击右下角下载按钮就可以下载。

1、初始化仓库、提交

  • 配置 用户名、邮箱和公钥
    参考:https://www.cnblogs.com/fixdq/p/9065283.html
1.clone代码时使用SSH协议



2.本地git配置 打开终端

-----------------------系统配置------------------------------------
git config --global core.quotepath false  //支持utf-8编码 解决中文乱码
git config --global user.name username
git config --global user.email address@email.com
-----------------------系统配置------------------------------------

3.生成一个新密钥并将它添加到github

复制代码
#1 打开终端,输入一下文本,替换自己的github邮箱地址
# 注意:生成秘钥的时候,会提示输入密码,直接默认回车,
$ssh-keygen -t rsa -b 4096 -C "your_email@example.com"
#2 生成的公钥和私钥在 /home/you/.ssh/目录下  id_rsa 和id_rsa.pub

#3 复制公钥
$ cat /home/you/.ssh/id_rsa.pub 

  • 初始化仓库相关操作
1、初始化仓库:
git init

2、将文件添加到暂存区:
git add .
查看状态
git status

3、提交信息:
git commit -m 备注信息

4、关联远程仓库:
git remote add origin https://github.com/CNxielong/Data-Structure-and-Algorithms.git

5、推送
git push -u origin master

6、删除
git rm XXfileName

7、重命名
git mv 改动前的名字 改动后的名字

2、查看提交的信息

1、查看提交记录
git log
2、查看某个人提交的代码记录
git log --author='XieLong'
3、查看标签
git tag
4、查看状态
git status
5、要查看远程库分支的信息
git remote
origin
6、要查看远程库URL信息
git remote -v
7、查看当前版本分支的路径
git log --oneline --graph

3、个人使用GIT常见操作

3.1 查看GIT提交记录详细信息

查看文件版本前后变化:
git show 0be33147ccd3bc283bd2f49c18f97ed6210930ce(这个是COMMIT ID——版本号ID)

3.2 文件回退

查看文件不同(代码级别)
git diff 

回退到上一次提交之前的状态
git checkout -- src/com/icbc/algorithms/Fibonacci.java(文件路径)

回退到GIT提交的版本
git log (查看最近GIT的提交记录)
git reset --hard 0be3314(提交的某个最近的版本号 版本号没必要书全面 会自动匹配)

撤销追踪(已经提交到暂存区的文件)
	步骤1  放弃追踪:git reset HEAD filePath/fileName
	步骤2 回退到上一次提交状态 : git checkout -- src/com/icbc/algorithms/Fibonacci.java(文件路径)

将某个文件撤回到某个版本号里面
git checkout 版本号 -- filePath/fileName


3.3 文件提交

git init(已经初始化就没必要了)
git add . (增加要提交的文件)
git commit -m 提交信息
git remote add origin https://github.com/CNxielong/Data-Structure-and-Algorithms.git
git push -u origin master(分支名)

3.4 创建标签

意义:

  • tag就是一个让人容易记住的有意义的名字,它跟某个commit绑在一起。
  • commit号是一串数字,不如TAG标签好记。
查看标签
git tag

创建新标签 默认标签是打在最新提交的commit上的
git tag v1.0(标签名)

指定分支绑定版本号
git tag v版本号 COMMIT版本号

查看指定版本号的标签信息
git show v版本号

还可以创建带有说明的标签,用-a指定标签名,-m指定说明文字:
$ git tag -a v0.1 -m "version 0.1 released"  COMMIT版本号

3.5 创建删除分支

1、首先,我们创建dev分支,然后切换到dev分支
$ git checkout -b dev
Switched to a new branch 'dev'

	1、1 git checkout命令加上-b参数表示创建并切换,相当于以下两条命令:
	$ git branch dev
	$ git checkout dev
	Switched to branch 'dev'

2、然后,用git branch命令查看当前分支:
	$ git branch
	* dev
	  master
	git branch命令会列出所有分支,当前分支前面会标一个*号。

3、修改完文件后 如果要切换分支

	现在,dev分支的工作完成,我们就可以切换回master分支:
	$ git checkout master
	Switched to branch 'master'

4、现在,我们把dev分支的工作成果合并到master分支上
	git merge命令用于合并指定分支到当前分支
	git merge dev
	Updating 7eaf4e2..d6c5b50
	Fast-forward
	 src/com/icbc/algorithms/TestGit.java | 2 ++
	 1 file changed, 2 insertions(+)
 
5、删除分支
	合并完成后,就可以放心地删除dev分支了:
	无法删除分支的情况:1、无法删除当前分支 2、无法删除有未提交文件的分支
	-d:删除 -D:强制删除(可以删除有未提交文件的分支)
	$ git branch -d dev
	Deleted branch dev (was b17d20e).

6、合并分支
	git merge 分支名

3.6 正确的合并分支

合并分支报错的情况
git merge dev
Auto-merging src/com/icbc/algorithms/TestGit.java
CONFLICT (content): Merge conflict in src/com/icbc/algorithms/TestGit.java
Automatic merge failed; fix conflicts and then commit the result.

解决冲突方式:
	方式1、git merge --abort 强制保留原分支的内容,忽略其他分支的内容。
	方式2、输入 git merge dev 
	1、代码出现 <<<<<<< HEAD =======  >>>>>>> dev 这三个符号
	2、手动删除上面三个符号 保留要合并后的代码。
	3、输入git status查看状态 出现
	Unmerged paths:
	  (use "git add <file>..." to mark resolution)
	        both modified:   TestGit.java
	4、git add .
	5、git commit 弹出可编辑页面。 输入i进入可编辑界面 可以输入提交标识,但是无法修改冲突代码。先按ESC后输入 :wq 退出
   6、git commit -m "提交信息"
   7、git push

4、多人使用GIT常见操作

4.1 查看提交记录

查看提交记录
git log 
git log --oneline 
git log --oneline --graph

4.2 删除不想要的分支

拉取远程代码
git fetch 
查看所有分支
git branch -av
删除分支
git push origin --delete master

4.3 不同的人修改了不同的文件

1、查看所有的信息 git branch -av
2、merge信息 git merge origin/test
进入编辑命令行页面 按键盘 i进入编辑模式,编辑完 按ESC键,后输入 :wq 保存退出
3、git push

4.3 不同的人修改了想同的文件

拉取远端的分支
修改代码
提交代码
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值