Git 笔记

【查看】【修改】用户名和邮箱地址

//查看:
$ git config user.name
$ git config user.email
//修改 or 添加:
$ git config --global user.name "jerryjin0803"
$ git config --global user.email "jerryjin0803@gmail.com"

配置 SSH Key

Windows平台下,首先安装Git .
设置邮 箱: git config --global user.email “jerryjin0803@gmail.com” (不带邮箱部分就是查看)
设置用户名: git config --global user.name “jerryjin0803” (不带用户名部分就是查看)

//设置邮箱
$ git config --global user.email "jerryjin0803@gmail.com" 
//设置用户名
$ git config --global user.name "jerryjin0803"
//生成 
$ ssh-keygen:ssh-keygen -t rsa -C "jerryjin0803@gmail.com"

生成位置在:windows 下在 user/用户名/里面找到.ssh文件夹下的 id_rsaid_rsa.pub
在这里插入图片描述
复制 id_rsa.pub 内容到网站的管理界面,添加 publicKey,
(登陆GitHub,打开"Account settings",“SSH and GPG keys"页面:然后,点"New SSH Key”,填上任意Title,在Key文本框里粘贴 id_rsa.pub 中的内容)
在这里插入图片描述
TortoiseGit 王八壳子不认这个默认生成的KEY。自己用 PuTTYgen.exe 打开(Load)上面生成的密钥 id_rsa 再 Sava private key 把这个存出来的 ppk 给王八壳子用。(保存时如果你没有设置密码,它会问提示你一次)
王八壳子里的设置:设置》Git》远端》(选一个远端)》Putty密》选择上面生成的 ppk 文件即可。

如果喜欢用便携版(绿色版)的PortableGit

上面生成公钥的步骤都一样,你可能会发现 clone 项目时用git:协议还是会提示“拒绝”
因为本地的 ssh-agent 没有运行,需要手动运行它。(你也可以设置个开机启动)

//手动运行代理
$ eval $(ssh-agent -s)
//把私钥添加进去(注意这里的地址不要傻傻的照抄,看你自己的。前面生成的部分有说明)
$ ssh-add C:/Users/Administrator/.ssh/id_rsa
//连接测试:
$ ssh -T git@github.com
//结果
Hi 【你的用户名】! You've successfully authenticated, but GitHub does not provide shell access.

Git基本语法

https://code.csdn.net/help/CSDN_Code/code_support/new_8

Git设置账号的命令:

git config set user.name●设置绑定用户名,此处可以与平台用户名不同。
git config set user.email xxx@xxx.com●此处邮箱需为CODE注册邮箱
git remote add code <项目地址>●项目ssh地址。这里项目地址前 code 就是它取的短名称
git config -l●最后检查user.name及user.email是否配置正确

Git常用命令:

git init●在本地初始化git仓库
git clone Git项目的SSH地址●从远程克隆git仓库到本地
git status●查看当前状态
git add *.XXXX●加入版本控制系统
git add .●增加当前子目录下所有更改过的文件至index
git commit -m '这里是提交时的备注内容’●提交并添加log
git push●向服务器推送
git push -u ●向服务器推送前,先更新

git pull和git push

按照第一步完成设置后,一般而言,你本地代码仓将会有两个远端地址。指向github的远端主分支地址为origin master,指向CODE平台远端主分支地址为code master。
根据绑定账号时的设置,从两个平台回拉和推送代码的命令分别是:

从github回拉: git pull origin master
推送到github: git push origin master
从CODE回拉: git pull code master
推送到CODE: git push code master

为了保持本地项目处于最新状态,建议您在每次修改项目之前都是用git pull命令确认一下本地与远端的代码保持同步。

pull 三种用法

$ git pull <远程主机名> <远程分支名>:<本地分支名>

  1. 从远程的 master拉取到本地的 master
git pull origin master:master
  1. 从远程的 master 拉取到本地当前分支
git pull origin master
  1. 从远程的所有分支拉取到本地对应的分支
git pull

如果新建的分支,远端还没有:

本地新建分支 v1
$ git branch v1
切换到分支 v1   (git checkout -b v1 一样可以实现,具体意思是,切换到分支v1,如果它不存在就创建 )
$ git checkout v1
查看分支 (前端带 * 的就是当前分支)
$ git branch -a
本地添加或修改文件,后全部添加到缓存区
$ git add .
提交到本地仓库
$ git commit -m "这是分支1,远端还没有"
推送并创建远端分支
$ git push origin v1  

本地没有的分支,直接从远端拉来:

git checkout -b 本地分支名 origin/远程分支名

Git命令:

从缓冲区撤销。 add 的逆操作。 可换成 . 表示全部
git reset HEAD
http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000/001374831943254ee90db11b13d4ba9a73b9047f4fb968d000

撤销修改。 用于胡改一通自己都后悔的时候。 可换成 . 表示全部
git checkout –

Git 取消对文件跟踪,相当于与git无关了。 可换成 . 表示全部
git rm -r --cached ●从缓存列表中清除最后的点表示全部,可换成具体的文件

diff
git diff:比较WorkSpace和stage,add之前有diff输出;add之后没有diff输出
git diff HEAD:比较WorkSpace和repo,add之前之后都有diff输出
git diff --cached:比较stage和repo,add之前没有diff输出;add之后有diff输出

直接从别人仓库 Clone下来的项目,现在想提交到自己的仓库怎么办?

参考:git clone 之后才想要提交代码怎么办?

1、先从对方的仓库 fork 项到自己仓库。
2、断开本地项目当前的远端地址 git remote remove origin
3、让本地项目与自己的仓库建立连接 git remote add origin git@github.com:jerryjin0803/MyGit.git
4、可以正常操作了。

分支信息

# 查看分支关联信息
git branch -vv
git remote show origin
cat .git/config

# 建立追踪关系,在现有分支与指定的远程分支之间 (如果没建立关系 push 和 pull 时都要明确指明分支)
$ git branch --set-upstream [branch] [remote-branch]

修改关联的远程仓库地址

比如仓库地址原来是https://gitee.com/jerryjin0630/ssm-integration.git嫌弃长,改成了https://gitee.com/jerryjin0630/ssm.git

git remote set-url origin https://gitee.com/jerryjin0630/ssm.git

修改完后,会要你重新输入账号密码。

添加远程库

git remote add <远程创建另名:origin> <远程仓库地址:git@gitee.com:jerryjin0630/ssm.git>

参考资料【本文没有的到这去查吧】

码云的 Git 大全
廖雪峰的官方网站Git
在线学习 Git 分支

笑虾:Git学习笔记 - 创建仓库/推送已有仓库
笑虾:GitLab - 创建代码仓库

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

笑虾

多情黯叹痴情癫。情癫苦笑多情难

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值