关于git的安装可以看教程
目录
一.配置 Git 的用户名和邮箱
桌面右击打开 Git Bash,依次执行以下命令进行用户名和邮箱的配置(注意有无引号):
git config --global user.name "你的用户名"
git config --global user.email 你的邮箱
配置完成后可以执行以下命令进行查看:
git config --list
至此Git的邮箱账户配置就完成了。
二、Git的本地操作
首先,需要先了解一下,Git所创建的项目我们称作仓库,仓库中包含众多的文件,这些文件必须要提交到仓库中,才能实现文件的管理。
仓库分为本地仓库与远程仓库(此文以github为远程仓库做演示),使用Git可以将本地仓库同步到远程仓库,当然也可以将远程仓库同步到本地。
1.Git本地仓库基本设置(一)
①使用gitbash新建文件夹(也可在图形界面操作)并初始化
跳转到需要新建仓库的文件夹
cd 路径
输入pwd可以查看文件路径
输入如下命令对本地仓库初始化,初始化后会创建一个.git文件,该文件会记录你所操作的所有变更行为,不要随意删除。
git init
界面如下,你还可以输入命令ls -ah查看隐藏的.git文件
② 创建文件
创建文件的方式有三种
vi 1.txt
此命令会直接创建并打开一个文件1.txt
touch 2.txt
touch的作用是更改文件或目录时间。touch 2.txt 如果2.txt不存在,则创建空文件2.txt
echo “abcd” > 3.txt
此命令可以直接创建文件3.txt并将abcd写入。
vi hello.py
按下i键编辑文件,可以输入
print("hello world")
再按下esc键,输入:wq保存并退出,此时名为hello.py的文件就创建成功了
③文件状态
git下文件有四种状态:untracked(新创建文件),unmodified(git commit后的文件),modfied(修改了的文件)staged(暂存区的文件)
以上四个状态中我们需要注意modfied与staged状态,modified是修改了的文件,无法直接上传到仓库,需要转换到staged状态的文件我们才可以加到仓库中。
④文件状态转换
文件新建好后,此时我们需要提交文件到本地仓库,命令如下
git add 'hello.py'
git add . //上传所有文件
此时然后查看文件状态,显示绿色表示是staged状态,表示可以提交到本地仓库
git status
⑤文件提交
文件提交命令如下,我们需要注意引号中的内容是提交的注释,必须予以说明
git commit -m "1.creat hello"
⑥查看日志
使用以下命令可以查看日志,也就是我们的操作记录
git log
每次提交都会产生一个唯一的识别码,识别码可以让我们以后回退到当前修改。
⑦文件回退
我们对文件hello.py再做一次修改(加入一行abc),同样提交在产生日志。
使用一下命令可以查看哪儿修改了:
git diff
我们可以看到有两次提交记录,此时我们想回退到上次修改,使用以下命令
git reset commitID
git reset还可以加参数,有如下三个
git reset commitID --hard
--hard不保存所有变更
--soft保留变更并且变更内容处于staged
--mixed保留变更处于modified,默认值
2.Git本地仓库基本设置(二)——分支
创建分支有一下两个命令:
创建分支
git branch name
git branch //查看本地分支
创建分支并以template分支为模板,如果模板是远程仓库,则需要在template前面加origin
git checkout -b <name><template>
跳转到该分支
git checkout 分支名
合并分支
git mrege
三、Git与Github同步
1.在github新建仓库
Repository name: 仓库名称
Description(可选): 仓库描述介绍
Public, Private : 仓库权限(公开共享,私有或指定合作者)
Initialize this repository with a README: 添加一个README.md
gitignore: 不需要进行版本管理的仓库类型,对应生成文件.gitignore
license: 证书类型,对应生成文件LICENSE
点击create即可创建完成。
2.创建ssh
因为本地Git仓库和GitHub仓库之间的传输是通过SSH加密传输的,GitHub需要识别是否是你推送,GitHub只要知道了你的公钥,就可以确认只有你自己才能推送,所以需要配置ssh key,配置完以后访问不需要密码。
这是配置账户命令,前面已有讲述,若前面已经配置可忽略:
git config --global user.name "你的用户名"
git config --global user.email 你的邮箱
输入如下命令创建ssh key
$ ssh-keygen -t rsa -C "123@126.com" //123 是你自己注册GitHub的邮箱
输入命令后会提示输入密码,可以不用写直接回车,直到如下界面表示成功:
去C:\Users\用户名下找.ssh
文件夹,里面有id_rsa
和id_rsa.pub
两个文件,这两个就是SSH Key的秘钥对,id_rsa
是私钥,不能泄露,id_rsa.pub
是公钥,可以公开。
打开GitHub上,打开“Account settings”--“SSH Keys”页面,然后点击“Add SSH Key”,操作如下:
3.验证是否成功
在git bash里输入下面的命令
ssh -T git@github.com
如果初次设置的话,会出现如下界面,输入yes 同意即可
4.本地与远程仓库同步
本地创建与提交前面已有讲述,不再赘述,接下来将本地与远程仓库关联
git remote add origin 你的地址
//远程同步至本地
git clone 你的地址
你的地址在github复制即可
打开github仓库就可以看到已经关联并上传
//git push
git push -u origin master
//关联后,第一次推送master分支的所有内容命令,此后,每次本地提交后,就可以使用命令
git push origin master //推送最新修改
//有时候会提交失败,可以尝试强制提交,只建议在第一次提交中使用
git push -u origin master -f
多人写作时,还需注意分支的同步问题,下列命令是将远程分支作为本地分支的上流分支
git push -set-upstream origin 分支
拉取并合并 如果合并的不同项目会出错,使用下面命令合并
git pull origin master
将github上仓库的文件和本地文件同步
git pull --rebase origin master
查看远程仓库信息
git fetch
官方说明:
用命令创建一个仓库
echo "# pygit" >> README.md git init git add README.md git commit -m "first commit" git branch -M main git remote add origin git@github.com:Jankin-github/pygit.git git push -u origin main用命令将本地仓库同步至远程仓库
git remote add origin git@github.com:Jankin-github/pygit.git git branch -M main git push -u origin main
5、删除仓库文件
方法一:在编辑器中直接把要删除的文件删除掉
方法二:使用git删除:git rm '文件名',然后提交操作
6、命令别名设置
方法一:打开安装目录,找到gitconfig,可以别名设置
如:
ad = add .
cmm=commit -m
lg=log
rlg=reflog
co=checkout
cob=checkout -b