github的一些基本操作,感觉有些命令长时间不用就忘了,所以决定记录一下。
新建版本库
1. 初始化本地仓库
#可以在任意目录下新建一个文件夹用作版本库
$ mkdir Mydir
#进入该文件夹
$ cd Mydir
# 初始化Git版本库
$ git init
# 最好添加一个README.md文件
$ echo "# Mydir" >> README.md
$ git add README.md
$ git commit -m "Readme"
2. 关联到远程仓库,这里有两种方式
- (1)将本机作为服务器,本地库添加为远程仓库
# 添加一个远程仓库,ssh后面是本地仓库的地址,lyh是本机用户名,@本机的IP地址(ifconfig查看),最后是本地仓库的路径
$ git remote add origin git remote add origin ssh://lyh@192.168.10.72/~/GitHub/Mydir/.git
# 如果远程origin已存在,可以用下面的命令先删除
$ git remote rm origin
# 将本地的master分支跟踪到远程分支,也可以用其他分支
$ git push -u origin master
# 如果出现提示:port 22: Connection refused,可能是没有安装openssh-server ,执行以下命令安装,然后再次git push ...
$ sudo apt-get install openssh-server
添加成功如下图:
# 查看远程仓库
$ git remote show origin
这时候,别人就可以clone你远程仓库下面的代码了以及项目合作,只需要在局域网内就可以工作。
- (2)添加远程库到github服务器
登录自己的github
新建仓库(repository)
点击New
新建库的名字与本地版本库命名相同
根据提示添加该仓库为远程库
# 如果已添加过README.md,跳过前3步,直接执行最后两步
$ git remote add origin https://github.com/gitliuyuhan/Mydir.git
$ git push -u origin master
以后就可以在终端下通过git add 、git commit 向远程库提交文件了。
删除提交到github上的文件
1. 进入到对应的本地仓库,删除对应的文件
2. git commit -a -m "delete"
3. git push
版本回退
1. git log
#查看历史
2. git reset 版本号开头任意几位
#回退
撤销git add
1. git rm --cached 文件名
merge与对方项目同步
如果我fork了别人的项目,现在别人已经更新过,我想与对方保持同步
1.new pull request
2.base fork 选择自己的项目,head fork 选择对方的项目
3.merge
同步成功