当我们git clone一个远程项目时,一般不会让我们一直接去修改远程项目的主分支的,往往需要我们创建一个分支,并提交它。

wKioL1Vq5tPwSh0UAACyfqWWZ3E432.jpg


于是就在git操作的当前目录下有一个test文件夹

wKiom1Vq5XLg1Bc8AADFVv4w7YI277.jpg


在这个目录下的内容就是clone下的项目内容

wKioL1Vq5zzBz5OFAADWDW26F-g366.jpg



现在可以操作这个项目了,比如创建一个test.txt文件,衣修改一个readme.md中的内容

wKiom1Vq5jnxZVOGAAEfoxqJHEE763.jpg


在当前目录下打开git bash,来提交刚才修改的文件或新增文件,首先我们用git status来查看当前项目的状态及缓存在HEAD中的状态,你也可以用git status -s 来查看简短的状态信息显示

wKiom1Vq53LSg9dCAAFyTjF8QJI519.jpg

wKioL1Vq6h-x6L3yAABLphev9e0435.jpg


往往当我们提交之前,可能要看一下我们修改了那些内容,这时我们可以用git diff命令显示修改前与修改后的区别如:

wKioL1Vq7BnD4t2AAACUXwRmR3g551.jpg


接下来我们要用git add命令来把之前修改及添加文件信息添加到提交缓存中。

wKiom1VrH3eTb5dMAAE7USPCHT8527.jpg

(上图中的星号表示对文件名的通配)

wKioL1VrIeSj0N7qAADBHVCLRVA717.jpg

(上面中的git add . ,表示添加当前目录中的所有文件)


接下来如我们还想看一下修改了那些内容,这回我们不能用git diff了,git diff只显示没有把改动加入缓存之前的修改的内容显示,所以我们要用git diff --cached,这样就会显示加入缓存中的修改内容。

wKiom1VrIYTDABrgAAEz5tBcWqY538.jpg


接下来就是提交了,提交操作我们可以使用git commit -m "提交时要写的说明",操作如下图:

wKioL1VrI4mBeu6OAABffwNsRUA299.jpg


最后就是要把我们对项目的修改推送到远程项目分支上去,一般我们不允许直接推送到主分支上,这里我们可以创建分支,并同步这个分支到远程,然后把修改的内容推送到远程的那个对应的分支上。

创建分支我们可以用

git branch new_branch  --创建一个名为new_branch的分支
git checkout new_branch --切换到名为new_branch的分支上

上面的两步可以用下面的一步来代替
git checkout -b new_branch

而把本地新创建的分支推送到远程,可使用的命令如下

git push origin new_branch  --git的执行就是把当前分支推送到远程new_branch命名的分支上,如果远程new_branch分支不存在,则创建,否则就更新远程new_branch,如果不是操作当前分支,我就可这样操作:git push origin development:new_branch ,这里就是把本地的development分支推送到远程new_branch这个分支,远程的new_branch分支存在时就更新,不存在时就创建。

这里顺便说一下怎样删除一个远程分支,我们可使用 git push origin :new_branch  就是把一个分支推送到远程new_branch分支上,这样就删除了远程分支了

下图就是一个操作演示

wKioL1VrNcmheCt5AAIP6-hktsw892.jpg