`syncPermissions()`和`attachPermissions()`之间的区别?

What's the difference between syncPermissions() and attachPermissions() in Laravel's package Laratrust?

$role->attachPermissions($permission);

And

$role->syncPermissions($permission);

The differences are the same as Laravel's native attach() and sync() methods for many-to-many relationships.

See: Laravel Eloquent - Attach vs Sync

$admin->attachPermission($createPost);

 // parameter can be a Permission object, array or id 
 // equivalent to $admin->permissions()->attach([$createPost->id]);

..

$owner->attachPermissions([$createPost, $editUser]);

// parameter can be a Permission object, array or id 
// equivalent to $owner->permissions()->attach([$createPost->id, $editUser->id]);

..

$owner->syncPermissions([$createPost, $editUser]);

// parameter can be a Permission object, array or id 
// equivalent to $owner->permissions()->sync([$createPost->id, $editUser->id]);

From the Laratrust Docs.