Как эффективно повторно основывать и продвинуть локальное ответвление мерзавца?

Для второго ответа вы можете использовать gsub, чтобы удалить из строки все, что не является числом, а затем разбить строку следующим образом:

unique(as.numeric(unlist(strsplit(gsub("[^0-9]", "", unlist(ll)), ""))))
# [1] 7 6 1 5 2

Для первого ответа, аналогично используя strsplit,

unique(na.omit(as.numeric(unlist(strsplit(unlist(ll), "[^0-9]+")))))
# [1]   7 667  11   5   2

PS: не называйте вашу переменную list (так как есть встроенная функция list). Я назвал ваши данные как ll.

9
задан siebert 14 September 2015 в 21:27
поделиться

4 ответа

Нет необходимости прикасаться к вашей локальной главной ветке, если вам не нужно ее обновлять, и это, кажется, вызывает много ненужных переключений ветвей.

Это дополнительная минимальный рабочий процесс.

git fetch

# ensure that everything is committed
# perhaps git commit -a is required...

git rebase origin/master


# If you don't want to push the very latest commits you might
# want to checkout a parent or ancestor of the current commit
# to test that the proposed commit passes tests, etc.
# e.g. git checkout HEAD~n

# push to the remote master
git push origin HEAD:master

# if you checked out a parent, go back to the original branch
git checkout mybranch

Если вы абсолютно уверены в родительской фиксации, вы можете пропустить этапы проверки и просто сделать следующее, но я настоятельно не рекомендую этого делать. Публикация непроверенных коммитов - не лучшая практика.

git push origin HEAD^:master
13
ответ дан 4 December 2019 в 10:34
поделиться

Нет необходимости выполнять тягу одновременно с главной и моей ветвью. Поскольку вы такой хороший гражданин и делаете быстрые обновления, это довольно просто:

# Save local mods not ready for commit
git stash
# Do the pull & rebase local work assuming this is a remote tracking branch
git pull --rebase
git checkout master
git merge mybranch
git push

Конечно, вы также можете нажать из своей ветки mybranch

# Save local mods not ready for commit
git stash
# Do the pull & rebase local work assuming this is a remote tracking branch
git pull --rebase
git push origin mybranch:master
6
ответ дан 4 December 2019 в 10:34
поделиться

Вы можете объединить pull и rebase в одну:

git pull --rebase master

Но в целом да, по моему опыту, он включает в себя все эти команды.

Чтобы держите репозиторий в чистоте, полезно часто запускать "git gc", который удалит неиспользуемые объекты. Это должно сократить время переключения ответвлений.

1
ответ дан 4 December 2019 в 10:34
поделиться

Я обычно так и делаю.

git co master
git pull
git rebase master mywrk # fix conflicts if any
git rebase mywrk master
git push

Вы можете определить псевдонимы, чтобы не печатать, если хотите.

0
ответ дан 4 December 2019 в 10:34
поделиться
Другие вопросы по тегам:

Похожие вопросы: