初始配置:
配置用户名: git config --global user.name
配置邮箱:git config --global user.email
查看配置: git config --global --list
本地仓库初始化:先进入要创建仓库的地址 然后 git init
远程仓库初始化:git clone (+github 地址)
Git 的工作区域和文件状态
工作区域:
1.工作区:自己电脑上的目录
2.暂存区:临时存储区域用于保存即将提交到Git仓库的修改内容
3.本地仓库:代码创建的仓库
文件状态:
1.未跟踪untrack:文件还没上传到库
2.未修改unmodified:文件在库中还没被修改
3.已修改modified:文件被修改但没放到暂存区中
4.已暂存staged:被修改且放到暂存区中
文件基本操作
查看当前仓库状态:git status
查看当前文件夹下的内容:ls
查看暂存区的内容:git ls-files
添加到暂存区:git add <file>
使用通配符提交所有后缀为txt的文件:git add *.txt
提交文件夹下所有文件: git add .
提交: git commit -m 只会提交暂存区中的文件
取消暂存: git rm --cached<file>
查看提交日志: git log
代码版本回退:
1 git reset --soft HEAD^回退到上个版本 保存修改的工作区 和 暂存区的内容
2 git reset --hard HEAD^ 回退到上个版本 丢弃修改的工作区 和 暂存区的内容
3 git reset HEAD^回退到上个版本 保存工作区 和 丢弃暂存区的内容
版本回溯:
1查看操作历史记录: git reflog
找到想退的版本号然后:git reset --hard <版本号>
文件删除:
同时删除工作区和暂存区中的文件git rm <file>
gitignore文件:
用于忽略那些不希望放到仓库的文件比如:密码之类的
将不希望放的文件写入 .gitignore 文件中即可
vi .gitignore 在vim中编辑文件
vim中 i进入插入模式 esc推出模式 :wq保存并退出 ZZ直接退出
远程配置
ssh密钥配置:
1.首先进入根目录的.ssh文件夹 如果windows 系统没有.ssh文件夹参考:http://t.csdnimg.cn/lLSMz
2.ssh-keygen -t rsa -b 4096
-t后代表的是使用的是rsa协议 -b代表大小为4096
然后输入名称,密码。
3.会生成两个文件不带.pub后缀的是私钥文件,带.pub的就是公钥文件。将公钥文件中的内容复制到github(setting -> SSH and GPG keys)
4.在.ssh文件夹下创建config文件(无后缀名字为config)
# github
Host github.com
HostName github.com
PreferredAuthentications publickey
IdentityFile ~/.ssh/cpp_learn(刚刚创的密钥名)
5.git clone <address>
本地仓库和远程仓库的同步
本地同步到远程:git push
本地拉取远程内容:git pull