如果你在公司,则你不需要这一步,公司代码一般使用repo下载,会根据不同的代码层次分为很多git仓库,所以你不需要自己搭建。
如果是你自己需要构建一个代码仓库,则需要下面几个步骤:
比如我想要我的study目录是git仓库目录,先进入study目录
git config --global user.name “xxxx” //设置自己用户名
git config --global user.email "xxxx@qq.com" //设置自己的邮箱,不同的公司邮箱不一样
通过这两个命令设置自己的相关东西。
可以通过 git config --list 查看自己设置是否生效
下一步就是自己生成 秘钥在服务祺上进行登录,方便我们下载和推送相关代码。可以参考下面这个连接自己搭建一个服务器,方便我们下面的东西学习。
window10 搭建 git服务器
这里服务器已经搭建好了,然后自己测试已完成了
git 可以分为三个分区
本地工作区
本地暂存区
服务器暂存区
这里可以看出本地是通过 git add 将代码进行一个缓存。
缓存过后可以通过 git commit 添加你的提交记录 最后push到服务器上。
当环境搭建好了,我们就可以进行一些命令的操作
查看你本地的代码修改
git status
比如我现在我修改一下我刚才本地的 README.md 文件,然后再新添加一个 test-1.c文件
通过git status 你就能看到两个标红的文件,一个是 修改但是没有提交的 README.md 一个是没有追踪的 test-1.c的新文件
//后面加 . 代表查看所有修改的文件
// 后面加文件名是代表 查看那个文件的修改
git diff .
可以明显的看到我删掉了原来的第一行代码
添加了三行代码
当我们本地代码验证后可以将代码提交暂存区临时存储
提交所有的代码 (后面加 . )
git add .
同样的要通过 git status 查看状态
同样的 上面会提示你如果有提交多的代码,你可以通过 "git restore --staged + < file > 来回退到本地工作区
如下图:
提交指定的代码
git add test-1.c //test-1.c 是文件名
上面就代表你代码修改完成了,然后你就需要提交你的代码了
git commit -m "注释"
这里可以分为几步
然后可以使用git log 查看你的提交是否在本地的git分支上了
这个因为公司的代码会有很多分支,所以这里的提交方式不一样,我这里说我的提交方式吧
然后可以通过下面命令push上去
//git push <仓库地址> HEAD:refs/for/<分支>
//仓库地址 git@github.com:LuoCong-xiaoheihei/git-test.git
// 分支 main
git push git@github.com:LuoCong-xiaoheihei/git-test.git HEAD:refs/for/main
不同的公司可能提交方式不一,可以问问公司的同事。
然后可以在自己的服务器上看到自己的提交!就ok
比如我这里有三个分支,我发现这个test-2.c的提交没有用了,或者我暂时不想要这个提交怎么办么
//commit id 就是刚才图片commit 后面那串 很长的数字+字符的组合的东西
git reset --hard + <commit id>
从图中可以看到 我们使用 git reset --hard 命令可以切换到任何我们想要切换的分支,这样我们就可以很方便的验证我们代码是不是在那个提交上有问题呀这种。你要切换到最开始的分支你可以记住他的commit ID 或者 直接从服务器上同步一次代码就好了。
git log --name-status
普通的git log 只能看你的提交注释和commit id 号,看不到修改了那些文件,可以通过上面的命令进行查看
git log --author=xx (xxx是用户名)
你可以这样连起来用
git log --grep=xx (xxx是关键词)
这里就会把所有的提交有这个关键词的提交给你现实出来,同样的你也可以连起来用方便你查看
因为我们代码可能目录较多,加上电脑可能在编译东西,如果我们每次都查看仓库的提交我们会很慢,如果你知道在那个详细的目录下,我们可以通过加 . 来查看当前目录下的提交
如图,我们进如到一个新的目录下,如果不添加 . 他会把对应的仓库的所有提交打印出来,但是我们加了 . 他就只会打印我们当前目录下的提交
同理,这个也可以配合之前讲的命令一起使用,但是 . 需要加在最后 ,否则会报错。
其实 git 的命令真的很多
可以看到他后面可以跟71个参数或者更多,但是对于新手来说,上面几个是用的比较多的,当然不同的习惯也有不同的命令,这个看自己,如果你想要去学会更多的命令,你需要自己去查看资料,就是 gitbook 大家可以自己去查看。