一、流程
$ git init # 创建一个新的仓库
sublime 编写文本,不要使用win自带文本编辑器
$ git add file1 # 将文件添加到暂存区
$ git add file2
$ git commit -m "what is the change" # 把文件提交到当前分支
二、版本管理
$ git log # 查看历史纪录
$ git reset --hard HEAD~1 # 退回上一个版本;HEAD^表示上一个 D等价于HEAD~1
$ git reset --hard 67c02f62 # 回到未来(任意一个版本)
$ git status
$ git diff
删除文件:
$ git rm new_file # 删除一个文件
$ git commit -m "delete" # 提交
三、远程仓库
3.1 配置:
在cmder下
$ ssh-keygen -t rsa -C "myemail@163.com"
用户主目录里找到.ssh
目录,里面有id_rsa
和id_rsa.pub
两个文件,这两个就是SSH Key的秘钥对,id_rsa
是私钥,id_rsa.pub
是公钥。在github上打开settings 添加SSH key,填上任意Title,在Key文本框里粘贴id_rsa.pub
文件的内容。
3.2 创建:
在github上新建相同名仓库,在本地仓库位置下
$ git remote add origin git@github.com:czn1009265565/gitDemo.git
# 添加后,远程库的名字就是origin,这是Git默认的叫法,也可以改成别的,但是origin这个名字一看就知道是远程库。
$ git push -u origin master
# 把本地库的内容推送到远程,用git push命令,实际上是把当前分支master推送到远程。
# 由于远程库是空的,我们第一次推送master分支时,加上了-u参数,Git不但会把本地的master分支内容推送的远程新的master分支,还会把本地的master分支和远程的master分支关联起来,在以后的推送或者拉取时就可以简化命令。
3.3 推送:
$ git push origin master # 将本地已提交的master分支最新修改提交到GitHub
$ git push # 上述命令可简写
注意点:在团队协作git版本管理中,上传代码冲突很常见,即因为远程版本和本地版本不一致,此时需要先git pull。当然,在开发中我们需要用到开发分支。
3.4 从远程库克隆:
$ git clone git@github.com:czn1009265565/tensorflow.git
常用命令:
$ git push <远程主机名> <本地分支名>:<远程分支名>
$ git pull <远程主机名> <远程分支名>:<本地分支名>
$ git branch 用于列出、创建、删除分支
git branch # git branch -a
git branch -b dev
git branch -d dev